The PCI Express 3.0 (PCIe3) SAS adapter family supports multiple I/O channels. This support enables the adapter device driver to process multiple interrupts in different threads simultaneously, thereby potentially improving performance. Increasing the number of channels that are used by an adapter might improve disk performance by increasing disk throughput (or I/O), but might also increase kernel-thread processing speed. The ideal number of I/O channels must not be more than the number of RAID arrays that are optimized on an adapter or lesser than the number of physical processors that are assigned to the system partition. The number of I/O channels can be viewed and changed on each individual RAID adapter.
To view the number of I/O channels on a PCIe3 RAID adapter, use the lsattr command from the AIX® command line. The nchan attribute contains the current setting. The default value for the number of I/O channels is 1 and the maximum value is 15.
Adapter resources are divided among the channels. When increasing the number of channels (nchan), it is preferable to increase the adapter-wide number of command elements (max_cmd_elems) and DMA window (max_dma_window). This action ensures that each channel has sufficient resources available to process I/O operations. See System software allocations for SAS controllers.
lsattr -E -l sissas2 -a nchan
The
system displays a message similar to the following example: nchan
1 Number of IO channels TrueYou can change the number of I/O channels on a PCIe3 RAID adapter from the command line by running the chdev command. The new settings take effect when the adapter is configured the next time.
chdev -1 sissasN -a "nchan = value"
Where sissasN is
the name of a PCIe3 RAID adapter and value is the
number of I/O channels you assign to the adapter.Consider a system configuration with four processors assigned to the AIX partition and running a single system HA configuration with two adapters with six RAID arrays. Assuming three arrays were optimized to each controller, the optimal value for nchan on each controller would be three.
To configure the sissas2 adapter for three I/O channels:
rmdev –Rl sissas2
chdev –l sissas2 –a “nchan = 3”
cfgmgr –l sissas2
bosboot -a
To change the number of I/O channels that are running on the sissas2 adapter and to set the change to take effect when the partition is restarted:
chdev –l sissas2 –a “nchan = 3” -P
bosboot -a