Monday, January 30, 2012

AIX - AIO - A rough Note


AIX - AIO - A rough Note


[root@tcs02app]/>ioo -a
                    aio_active = 0
                   aio_maxreqs = 65536
                aio_maxservers = 30
                aio_minservers = 3
         aio_server_inactivity = 300
         j2_atimeUpdateSymlink = 0
 j2_dynamicBufferPreallocation = 16
             j2_inodeCacheSize = 400
           j2_maxPageReadAhead = 128
             j2_maxRandomWrite = 0
          j2_metadataCacheSize = 400
           j2_minPageReadAhead = 2
j2_nPagesPerWriteBehindCluster = 32
             j2_nRandomCluster = 0
              j2_syncPageCount = 0
              j2_syncPageLimit = 16
                    lvm_bufcnt = 9
                    maxpgahead = 8
                    maxrandwrt = 0
                      numclust = 1
                     numfsbufs = 196
                     pd_npages = 65536
              posix_aio_active = 0
             posix_aio_maxreqs = 65536
          posix_aio_maxservers = 30
          posix_aio_minservers = 3
   posix_aio_server_inactivity = 300
 
   [root@tcs02app]/>ioo -a | grep active
                       aio_active = 0
                 posix_aio_active = 0

aioo -o fsfastpath=1

ioo -o fsfastpath=1
[root@tcs02app]/>pstat -a | grep aio
 30 a  1e0088      1 1e0088     0     0     1  aioLpool
 33 a  2100a2      1 2100a2     0     0     1  aioPpool

[root@tcs02app]/>ioo -a | grep minservers
                aio_minservers = 3
          posix_aio_minservers = 3
For AIX 6.1 Asynchronous I/O setup via smit / smitty is also not feasible, since its dynamically enabled.

ioo -F -a | grep fsfastpath

[root@tcs02app]/>ioo -F -a
                    aio_active = 0
                   aio_maxreqs = 65536
                aio_maxservers = 30
                aio_minservers = 3
         aio_server_inactivity = 300
         j2_atimeUpdateSymlink = 0
 j2_dynamicBufferPreallocation = 16
             j2_inodeCacheSize = 400
           j2_maxPageReadAhead = 128
             j2_maxRandomWrite = 0
          j2_metadataCacheSize = 400
           j2_minPageReadAhead = 2
j2_nPagesPerWriteBehindCluster = 32
             j2_nRandomCluster = 0
              j2_syncPageCount = 0
              j2_syncPageLimit = 16
                    lvm_bufcnt = 9
                    maxpgahead = 8
                    maxrandwrt = 0
                      numclust = 1
                     numfsbufs = 196
                     pd_npages = 65536
              posix_aio_active = 0
             posix_aio_maxreqs = 65536
          posix_aio_maxservers = 30
          posix_aio_minservers = 3
   posix_aio_server_inactivity = 300
##Restricted tunables
                  aio_fastpath = 1
                aio_fsfastpath = 1
                 aio_kprocprio = 39
              aio_multitidsusp = 1
               aio_sample_rate = 5
         aio_samples_per_cycle = 6
       j2_maxUsableMaxTransfer = 512
      j2_nBufferPerPagerDevice = 512
      j2_nonFatalCrashesSystem = 0
         j2_syncModifiedMapped = 1
       j2_syncdLogSyncInterval = 1
                 j2_unmarkComp = 0
            jfs_clread_enabled = 0
             jfs_use_read_lock = 1
                 memory_frames = 16777216
                    minpgahead = 2
     pcibus_dma_memory_protect = 1
            pgahd_scale_thresh = 0
            posix_aio_fastpath = 1
          posix_aio_fsfastpath = 1
           posix_aio_kprocprio = 39
         posix_aio_sample_rate = 5
   posix_aio_samples_per_cycle = 6
                   pv_min_pbuf = 512
            sync_release_ilock = 0
[root@tcs02app]/>
When the fsfastpath tunable is set to 1, asynchronous I/O requests for files
opened with Concurrent I/O (CIO) mode in a JFS2 file system AIO are passed
directly to LVM or disk using the corresponding strategy routine.
The following output shows the restricted tunables list of both AIO subsystems:
# ioo -F -a
... (lines removed for clarity)
##Restricted tunables
aio_fastpath = 1
aio_fsfastpath = 1
aio_kprocprio = 39
aio_multitidsusp = 1
aio_sample_rate = 5
aio_samples_per_cycle = 6
... (lines removed for clarity)
posix_aio_fastpath = 1
posix_aio_fsfastpath = 1
posix_aio_kprocprio = 39
posix_aio_sample_rate = 5
posix_aio_samples_per_cycle = 6
pv_min_pbuf = 512
sync_release_ilock = 0
In AIX Version 6, both AIO subsystems are loaded by default but not activated;
no AIO servers are started at AIX boot time. The AIO servers are automatically
started when applications are initiating AIO I/O requests. They stay active as long
as they service AIO I/O requests.
There are no more AIO devices in ODM and all their parameters now become
tunables using the ioo command. The newer aioo command is removed.

[root@tcs02app]/>ioo -F -a | grep fsfastpath
                aio_fsfastpath = 1
          posix_aio_fsfastpath = 1

No comments:

Post a Comment