How Many AIO Servers Am I Currently Using?
To determine how many POSIX AIO Servers are currently running, type the following information on the command line:
pstat -a | grep posix_aioserver | wc -l
Note:
You must run this command as the root user.
To determine how many LEGACY AIO Servers are currently running, type the following information on the command line:
pstat -a | egrep ' aioserver' | wc -l
Note:
You must run this command as the root user.
If the disk drives that are being accessed asynchronously are using either the Journaled File System (JFS) or the Enhanced Journaled File System (JFS2), all I/O is routed through the AIOs kprocs.
If the disk drives that are being accessed asynchronously are using a form of raw logical volume management, then the disk I/O is not routed through the AIOs kprocs. In that case the number of servers that are running is not relevant.
However, if you want to confirm that an application that uses raw logic volumes is taking advantage of AIO, you can disable the fast path option using System Management Interface Tool (SMIT). When this option is disabled, even raw I/O is forced through the AIOs kprocs. At that point, the pstat command listed in the preceding discussion works. Do not run the system with this option disabled for any length of time. The option provides a way to confirm that the application is working with AIO and raw logical volumes.
At releases earlier than AIX 4.3, the fast path is enabled by default and cannot be disabled.
How Many AIO Servers Do I Need?
Here are some suggested rules for determining what value to set maximum number of servers to:
The first rule suggests that you limit the maximum number of servers to a number equal to ten times the number of disks that are to be used concurrently, but not more than 80. The minimum number of servers should be set to half of this maximum number.
Another rule is to set the maximum number of servers to 80 and leave the minimum number of servers set to the default of 1 and reboot. Monitor the number of additional servers started throughout the course of normal workload. After a 24-hour period of normal activity, set the maximum number of servers to the number of currently running AIOs + 10, and set the minimum number of servers to the number of currently running AIOs - 10.
Note:
In some environments, you might see more than 80 AIOs kprocs running. If so, consider the third rule that follows.
A third suggestion is to take statistics using vmstat -s before any high I/O activity begins, and again at the end. Check the field iodone. From this you can determine how many physical I/Os are being handled in a given wall clock period. Then increase the maximum number of servers and see if you can get more activity or event completions (iodones) in the same time period.