Re: TUNING:aio parameters on AIX
Posted in 1998
Dave Thacker wrote:
>
> Platform: IBM Rs/6000 J30 AIX V4.1.5
> Engine Online DSA 7.23
>
> From much reading of vmstat, iostat, and xmperf we appear to be I/0 bound
> on our production machine.
> While investigating the problem I came across a configuration for aio
> servers. We are currently set to the default and IBM docs recommend that
> we increase them to MAX= (10* count of disks using aio) and
> MIN = (MAX * .5). I believe that OL 7.23 does use the aio libraries. Has
> someone else in an AIX shop changed this configuration? Did it help?
WHOA HORSEY! Informix's recommendations for 7.10 was 2-3 AIO VPs per
chunk, for 7.14 they made some improvements and changed that to 1.5-2
AIO VPs per chunk, as of 7.21 the recommendation, after another round
of optimizing AIO VPs is 1-1.5 AIO VPs per chunk (leaning toward 1), I
have not seen any recommendation for 7.3 but with the other speedups to
the 7.3 code stream I'd say that 1 AIO VP/chunk was now a maximum. I
have always found that these recommendations are MORE than sufficient.
I actually only count active chunks when determining AIO VP needs. For
example on one pair of servers I have 279 chunks and growing but many
of these are holding one months data for four years of history (ie all
September data in one dbspace made of 8-12 2GB chunks) so only one out
of twelve dbspaces ( and their chunks) are active and I do very well
with 127 AIO VPs (io/wp 0.6 -> 1.3 with most at 0.8 -> 1.1). IBM's
recommendation is excessive in the extreme.
Run onstat -g ioq to monitor q length by chunk and onstat -g iov to
monitor the activity of the KAIO and AIO VPs (BTW you can determine
which are being used this way). If almost all of your AIO VPs are
performing at least 1.0 io/wp with many showing 1.5 or more then you
need more AIO VPs if not, not. A value of io/wp means that an AIO VP
was awakened to handled a pending IO but before it could get to the
required page another, previously busy, AIO VP finished what it was
doing and took care of it. In effect having some of your VPs below
1.0 means you could even do without those VPs except at peak.
Conversely, if you have any AIO VP with <0.5 io/wp you can probably
reduce the number of AIO VPs accordingly since more than half the time
these VPs awaken there is nothing for them to do, they are just wasting
cycles and taking up swap space.
If it turns out, as I expect, that the VPs are not the culprit look to
your disk farm. Do you use singleton disk drives on a single
controller? Work toward the ultimate setup RAID1+0 of at least eight
mirrored pairs, spread across at least 4 controllers (2 primary, 2
mirror, preferably with 4 additional backup controllers handling the
same drives), 8 or 16K stripe size, 500MB-1GB cache per controller.
Expensive, but no I/O problems. Anyway RAID1+0, small stripe size.
Post some more information about your configuration and someone may be
able to help further.
Art S. Kagel