ioo Command
Purpose
Manages I/O tunable parameters.
Syntax
ioo [ -p | -r [ -K ]] [ -y ]{ -o Tunable [ =NewValue ] }
ioo [ -p | -r [ -K ]] [ -y ] { -d Tunable }
ioo [ -p | -r [-K ]] [ -y ] -D
ioo [ -p | -r | -K ] [ -F ] -a
ioo -h [ Tunable ]
ioo [ -F ] [ -K ] -L [ Tunable ]
ioo [ -F ] [ -K ] -x [ Tunable ] Description
The ioo command configures input/output (I/O) tuning parameters. This command sets or displays the current or next boot values for all I/O tuning parameters. This command can also make permanent changes or defer changes until the next reboot. An accompanying flag determines whether the command sets or displays a parameter. The -o flag can either display the value of a parameter or set a new value for a parameter.
If a process reads sequentially from a file, the values that are specified by the minpgahead parameter determines the number of pages to be read ahead when the condition is first detected. The value that is specified by the maxpgahead parameter sets the maximum number of pages that are read ahead, regardless of the number of preceding sequential reads.
The operating system allows tuning of the number of file system bufstructs
(numfsbuf) and the amount of data that is processed by the write behind algorithm
(numclust).
- The effect of changing the tunable parameters
- The misuse of ioo command can cause performance degradation or operating
system failure. Before experimenting with the ioo command, refer Performance overview of the
Virtual Memory Manager.
For more information on modifying any tunable parameter and its purpose, see the characteristics of the tunable parameter in the Tunable parameters section.
Make sure that the Diagnosis and Tuning sections of the tunable parameter applies to your situation. Changing the value of the tunable parameter might improve the performance of your system.
If both the Diagnosis and Tuning sections contain only N/A, do not change the tunable parameter unless directed by AIX development.
Flags
| Item | Description |
|---|---|
| -h [ Tunable ] | Displays the help information about the specified tunable parameter. If the tunable parameter is not specified, the -h flag displays the usage statement of the ioo command. |
| -a | Displays current value, reboot value (when used with the -r flag), Live
Update values (when used with the -K flag), or permanent value (when used with -p flag) for all the
tunable parameters, one per line in pairs tunable =
value. For the permanent option, a value is displayed for a tunable
parameter only if its reboot and current values are equal. Otherwise, NONE is
displayed as the value. |
| -d Tunable | Resets the specified tunable parameters to its default value. If the tunable
parameter that must be changed because it is not set to its default value, meets one or more of the
following set of criterias, a warning message is displayed and no change is made to the tunable parameter:
For more information about the different types of tunable parameters, see Tunable parameters categories. |
| -D | Resets all the tunable parameters to their default value. If the tunable
parameter that must be changed because it is not set to its default value, meets one or more of the
following sets of criterias, a warning message is displayed and no change is made to the tunable parameter:
For more information about the different types of tunable parameters, see Tunable parameters categories. |
| -F | Forces restricted tunable parameters to be displayed when you specify the -a, -L, or -x flag on the command line. If you do not specify the -F flag, restricted tunables are not included, unless they are named in association with a display flag, such as -o, -a, -x, or -L flag. |
| -K | Sets the tunable parameter value in both
/etc/tunables/nextboot and /etc/tunables/nextliveupdate
files. The -K flag is used only with the -r flag. When you specify the -K flag with the -r and -d flags or with the -r and -D flags, the tunable parameter value is set to its default value in the /etc/tunables/nextboot and /etc/tunables/nextliveupdate files to be used during the next boot or Live Update operations. When you specify the -K flag with the -L or -x flag, the ioo command displays the Live Update values. |
| -L [ Tunable ] | Lists the characteristics of one or all tunable parameters, one per line, by
using the following format: If you specify the
-K flag with the -L flag, the Live Update values are also
displayed. |
| -o Tunable [=NewValue ] | Displays or sets the value of a tunable parameter to a new value. The /etc/tunables/usermodified file is updated with the new
tunable parameter value when you use the -o flag to change the value of a
dynamic tunable parameter. If a tunable parameter that you want to change meets one or more of
the following set of criterias, a warning message is displayed and no change is made to the tunable parameter:
For more information about the different types of tunable parameters, see Tunable parameters categories. When you specify the
-r flag without a NewValue, the nextboot value for tunable
parameter is displayed. When -K flag is used in combination
with the -o flag without a NewValue, the next Live Update
value for the tunable parameter is displayed. When -p flag is used with
the -o flag without a NewValue, a value is displayed only if
the current and next boot values for the tunable parameter are the same. Otherwise,
|
| -p | Specifies that the changes apply to both the current value and reboot value
when you specify with the -o, -d, or
-D flag. The tunable parameter enables you to update the
/etc/tunables/nextboot file along with the current value. These combinations
cannot be used on Reboot and Bosboot type of tunable
parameters. The current value for Reboot and Bosboot type
of tunable parameter cannot be changed. When you specify -a or
-o flag without specifying a new value, the values display only if the current
and next boot values for a tunable parameter are the same. Otherwise, |
| -r | Makes changes that apply to reboot parameter values when
used with the -o, -d, or -D flag. The
tunable parameter enables you to update the /etc/tunables/nextboot file. If any
tunable parameter of type Bosboot is changed, the user is prompted to run the
bosboot command. When -r flag is used with the -a or -o flag without specifying a new value, next boot values for tunable parameters are displayed instead of current values. When used with the -K flag, changes apply to both /etc/tunables/nextboot file and /etc/tunables/nextliveupdate file. |
| -x [Tunable] | Lists the characteristics of one or all tunable parameters, one per line, by
using the following spreadsheet format:
If you specify the
-K flag with the -x flag, the Live Update values are also
displayed. |
| -y | Suppresses the confirmation prompt before the bosboot command is run. |
If you modify a restricted tunable parameter, by using the -o, -d, or -D flag, it results in a warning message for the user stating that a tunable parameter of the restricted-use type is modified. If you also specify the -r or -p flag, you are prompted for confirmation of the change of the restricted tunable parameter. In addition, at system reboot, the presence of restricted tunable parameters, which are in the /etc/tunables/nextboot file, is modified to a value that is different from their default value, by using a command line that specifies the -r or -p flag. The modification of a restricted tunable parameter results in an error log entry that identifies the list of the modified tunable parameters.
| Abbreviation | Power of two |
|---|---|
K |
210 |
M |
220 |
G |
230 |
T |
240 |
P |
250 |
E |
260 |
A change with the -o, -d, or -D flag, to a tunable parameter of type Mount displays a warning message to the user stating that the change is only effective for future mountings.
A change with the -o, -d, or -D flag, to a tunable parameter of type Connect, restarts the inetd command and displays a warning message to the user stating that the change is only effective for future socket connections.
An attempt to change with the -o, -d, or -D flag, a tunable parameter of type Bosboot or Reboot without the -r flag, displays an error message.
An attempt to change with the -o, -d, or -D flag but without the -r flag the current value of a tunable parameter of type Incremental with a new value smaller than the current value, displays an error message.
Compatibility Mode
When you run the tunable parameter in pre-5.2 compatibility mode, which is controlled by the sys0 attribute that is called the pre520tune, reboot values for tunable parameters, except Bosboot, are not meaningful. In pre-5.2 compatibility mode they are not applied at boot time.
In pre-5.2 compatibility mode, setting reboot values to tuning parameters remains achieved by embedding calls to tuning commands in scripts that are called during the boot sequence. Therefore, parameters of type Reboot can be set without the -r flag so that existing scripts continue to work.
The pre-5.2 compatibility mode is automatically turned on when a machine is migrated to AIX 5.2. For complete installations, it is turned OFF and the reboot values for the tunable parameters are set by applying the content of the /etc/tunables/nextboot file during the reboot sequence. Only in that mode the -r and -p flags are fully functional. For more information, see Kernel Tuning in Performance Tools Guide and Reference.
Tunable Parameters
| Item | Description |
|---|---|
| Dynamic | If the tunable parameter can be changed at any time. |
| Static | If the tunable parameter can never be changed. |
| Reboot | If the tunable parameter can be changed only during reboot. |
| Bosboot | If the tunable parameter can be changed only by using bosboot command and rebooting the machine. |
| Mount | If changes to the tunable parameter are only effective for future file systems or directory mounts. |
| Incremental | If the tunable parameter can be incrementally increased, except at boot time. |
| Connect | If changes to the tunable parameter are only effective for future socket connections. |
| Deprecated | If changes to the tunable parameter are no longer supported by the current release of AIX. |
ioo -h| Item | Description |
|---|---|
| aio_active |
|
| aio_maxreqs |
|
| aio_maxservers |
|
| aio_minservers |
|
| aio_server_inactivity |
|
| aio_delegateiotodriverkth |
|
|
|
| dk_closed_path_recovery |
|
| dk_lbp_enabled |
|
| dk_lbp_num_bufs |
|
| dk_lbp_buf_size |
|
| j2_atimeUpdateSymlink |
|
| j2_dynamicBufferPreallocation |
|
| j2_inodeCacheSize |
|
| j2_maxPageReadAhead |
|
| j2_maxRandomWrite |
|
| j2_metadataCacheSize |
|
| j2_minPageReadAhead |
|
| j2_nPagesPerWriteBehindCluster |
|
| j2_nRandomCluster |
|
| j2_recoveryMode |
|
| j2_syncByVFS |
|
| j2_syncConcurrency |
|
| j2_syncDelayReport |
|
| j2_syncPageCount |
|
| j2_syncPageLimit |
|
|
|
| lvm_bufcnt |
|
| maxpgahead |
|
| maxrandwrt |
|
| numclust |
|
| numfsbufs |
|
| pd_npages |
|
| posix_aio_active |
|
| posix_aio_maxreqs |
|
| posix_aio_maxservers |
|
| posix_aio_minservers |
|
| posix_aio_server_inactivity |
|
| posix_aio_delegateiotodriverkth |
|
|
Memory usage and statistics
-
To display the memory usage of the file system, enter the following command:
cat /proc/sys/fs/jfs2/memory_usageThis returns the metadata cache, the inode cache, and the total memory usage in bytes.
-
To display the statistics of the file system, enter the following command:
cat /proc/sys/fs/jfs2/statisticsThis returns the number of icache hits, icache misses, and icache activates.
-
To display the system statistics that are related to the LBP support such as the number of times the out-of-buffer value appears and the number of times the unmap operation failed, enter the following command:
cat/proc/sys/disk/lbp/statistics
Security
Examples
- To list the current and reboot value, range, unit, type, and dependencies of the tunable
parameters that are managed by the ioo command, enter the following command:
ioo -L -
To list the current, default, and reboot values, range, unit, and type of the j2_recoveryMode tunable parameter, enter the following command:
ioo -L j2_recoveryModeThe result might be similar to the following output:NAME CUR DEF BOOT MIN MAX UNIT TYPE ----------------------------------------------------------------------- recoveryMode 1 1 1 0 1 n/a D ----------------------------------------------------------------------- - To display the help information for the j2_nPagesPerWriteBehindCluster
tunable parameter, enter the following command:
ioo -h j2_nPagesPerWriteBehindCluster - To set the maxrandwrt tunable parameter to 4 after the next reboot, enter
the following command:
ioo -r -o maxrandwrt=4 - To permanently reset all ioo tunable parameters to default, enter the
following command:
ioo -p -D - To list the reboot value of all ioo tunable parameters, enter the following
command:
ioo -r -a - To list as spreadsheet format, the current value and reboot value, range, unit, type, and
dependencies of the tunables parameters that are managed by the ioo command,
enter the following command:
ioo -x