Appendix A. Open systems operating systems specifics 353
Direct I/O
An alternative I/O technique called Direct I/O bypasses the Virtual Memory Manager (VMM)
altogether and transfers data directly from the user’s buffer to the disk and vice versa. The
concept behind this is similar to raw I/O in the sense that they both bypass caching at the file
system level. This reduces CPU overhead and makes more memory available to the
database instance, which can make more efficient use of it for its own purposes.
Direct I/O is provided as a file system option in JFS2. It can be used either by mounting the
corresponding file system with the
mount –o dio option, or by opening a file with the
O_DIRECT flag specified in the open() system call. When a file system is mounted with the
–o dio option, all files in the file system use Direct I/O by default.
Direct I/O benefits applications that have their own caching algorithms by eliminating the
overhead of copying data twice, first between the disk and the OS buffer cache, and then from
the buffer cache to the application’s memory.
For applications that benefit from the operating system cache, Direct I/O should not be used,
because all I/O operations would be synchronous. Direct I/O also bypasses the JFS2
read-ahead. Read-ahead can provide a significant performance boost for sequentially
accessed files.
Concurrent I/O
In 2003, IBM introduced a new file system feature called Concurrent I/O (CIO) for JFS2. It
includes all the advantages of Direct I/O and also relieves the serialization of write accesses.
It improves performance for many environments, particularly commercial relational
databases. In many cases, the database performance achieved using Concurrent I/O with
JFS2 is comparable to that obtained by using raw logical volumes.
A method for enabling the concurrent I/O mode is to use the
mount -o cio option when
mounting a file system.
Boot device support
The DS8100 and DS8300 are supported as boot devices on RS/6000 and pSeries that
support Fibre Channel boot capability. This support is not currently available for the IBM
eServer BladeCenter. Refer to
DS8000 Host Systems Attachment Guide, SC26-7628, for
additional information.
AIX on IBM iSeries
With the announcement of the IBM iSeries i5, it is now possible to run AIX in a partition on the
i5. This can be either AIX 5L V5.2 or V5.3. All supported functions of these operating system
levels are supported on i5, including HACMP for high availability and external boot from Fibre
Channel devices.
Tip: If the number of async I/O (AIO) requests is high, then the recommendation is to
increase
maxservers to approximately the number of simultaneous I/Os there might be. In
most cases, it is better to leave the
minservers parameter to the default value since the AIO
kernel extension will generate additional servers if needed. By looking at the CPU
utilization of the AIO servers, if the utilization is even across all of them, that means that
they’re all being used; you may want to try increasing their number in this case. Running
pstat -a will allow you to see the AIO servers by name, and running ps -k will show them
to you as the name kproc.