<color><param>0100,0100,0100</param>Earlier this year we had a big thread about using NetApps as
a DB disk subsystems. I had made the following comment in reference
to performance on AIX:
</color>7) The one problem I do have, is that during a high sequential write
load, like creating an Oracle tablespace, the high sequential write
rate locks out other processes from doing I/o to the netapp. For
example, during a create of a 2gb db file, If I (in another window)
try and do anything that does I/O, I can wait for 5/10/15 seconds for
the command to come back. I'm not sure why this is, but I think
this is a problem in AIX, NOT the netapp - because if during the
massive sequential writes I try and access the netapp from another
computer I get great response. AIX must be queing NFS I/O's or<bigger>
<smaller>something - which doesn't make sense!
Well, I kept looking for an answer . . . and finally found it.
AIX has 2 options that control disk i/o pacing: minpout and maxpout. They are defined in the doc as follows:
:D<color><param>0100,0100,0100</param>isk-I/O pacing is intended to prevent programs that generate very large :amounts of output from saturating the system's I/O facilities and causing :the response times of less-demanding programs to deteriorate. Disk-I/O :pacing enforces per-segment (which effectively means per-file) high- and :low-water marks on the sum of all pending I/Os. When a process tries to :write to a file that already has "high-water mark" pending writes, the :process is put to sleep until enough I/Os have completed to make the number :of pending writes less than or equal to "low-water mark." The logic of I/O- :request handling does not change. The output from high-volume processes is :just slowed down somewhat. The high- and low-water marks are set with <bold>smit</bold> :by selecting <bold>System Environments</bold> -> <bold>Change / Show Characteristics of :Operating System</bold> and then entering the number of pages for the high- and :low-water marks. The default value for the high- and low-water marks is 0, :which disables pacing. New I/O pacing parameters normally take effect :immediately and last until they are explicitly changed.
The default for these parms is "0" - no limit. I found a comment in the performance tuning guide that said if your having problems with disk pacing, try setting these to maxpout=32 and minpout=16. After doing this i/o was much better (even normal) during a tablespace create. The manual stated that there is a small performance hit when setting these parms from default, but I didn't notice any in my testing.
So, for those of you using a Netapp for a db on AIX, you might want to look into these parms for yourself!
Rick
<nofill> ---------------------------------------------------------------------- Richard L. Rhodes e: rhodesr@firstenergycorp.com Ohio Edison Co. p: 330-384-4904 f: 330-384-2514