Re: AIX slow buffer reads

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10-10-26 05:04 PM, Andrà Volpato wrote:
----- Mensagem original -----
| On 10-10-25 03:26 PM, Andrà Volpato wrote:
|>  | On Mon, Oct 25, 2010 at 2:21 PM, Andrà Volpato
|>  |<andre.volpato@xxxxxxxxxxxxxxxxxxxxx>  wrote:

(...)

|>  |>   These times keep repeating after the second run, and I can
|>  |>   ensure AIX isnÂt touching the disks anymore.
|>  |>   IÂve never seen this behaviour before. I heard about Direct I/O
|>  |>   and I was thinking about givng it a shot.
|>  |>
|>  |>   Any ideas?
|>  |>
|>  |
|>  | I doubt disk/io is the problem.
|>
|>  Me either.
|>  Like I said, AIX do not touch the storage when runing the query.
|>  It became CPU-bound after data got into cache.
|
| Have you confirmed that the hardware is ok on both servers?
|

The hardware was recently instaled and checked by the vendor team.
AIX box is on JS22:
PostgreSQL 8.4.4, AIX 5.3-9 64bits, SAN IBM DS3400, 8x450GB SAS 15K Raid-5
8GB RAM (DDR2 667)

# lsconf
System Model: IBM,7998-61X
Processor Type: PowerPC_POWER6
Processor Implementation Mode: POWER 6
Processor Version: PV_6
Number Of Processors: 4
Processor Clock Speed: 4005 MHz
CPU Type: 64-bit
Kernel Type: 64-bit
Memory Size: 7680 MB

Debian box is on HS21:
PostgreSQL 8.4.4, Debian 4.3.2 64bits, SAN IBM DS3400, 5x300GB SAS 15K Raid-0
7GB RAM (DDR2 667)
We are forced to use RedHat on this machine, so we are virtualizing the Debian box.

# cpuinfo
processor       : [0-7]
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Intel(R) Xeon(R) CPU           E5420  @ 2.50GHz
stepping        : 6
cpu MHz         : 2500.148
cache size      : 6144 KB



| Have both OS's been tuned by people that know how to tune the
| respective OS's? AIX is very different than Linux, and needs to be tuned
| accordingly.

WeÂve been tuning AIX for the last 3 weeks, and lots of tuneables got changed.
On Debian, we have far more experience, and itÂs been a chalenge to understand how AIX works.

Most important tunes:
page_steal_method=1
lru_file_repage=0
kernel_heap_psize=64k
maxperm%=90
maxclient%=90
minperm%=20

Disk:
chdev -l hdisk8 -a queue_depth=24
chdev -l hdisk8 -a reserve_policy=no_reserve
chdev -l hdisk8 -a algorithm=round_robin
chdev -l hdisk8 -a max_transfer=0x400000

HBA:
chdev -l fcs0 -P -a max_xfer_size=0x400000 -a num_cmd_elems=1024

Postgres:
shared_buffers = 2304MB
effective_io_concurrency = 5

I wonder if effective_io_concurrency has anything to do with it. It was implemented and mainly tested on Linux, and I am unsure if it will do anything on AIX. The plan you posted for the query does a bitmap index scans which is what effective_io_concurrency will speed up.

Can you post the output of explain analyze for that query on both AIX and Linux? That will show where the time is being spent.

If it is being spent in the bitmap index scan, try setting effective_io_concurrency to 0 for Linux, and see what effect that has.


--
Brad Nicholson  416-673-4106
Database Administrator, Afilias Canada Corp.



--
Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance


[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux