Scheduling I/O on the paths of an Asymmetric Active/Active array

You can specify the use_all_paths attribute in conjunction with the adaptive, balanced, minimumq, priority and round-robin I/O policies to specify whether I/O requests are to be scheduled on the secondary paths in addition to the primary paths of an Asymmetric Active/Active (A/A-A) array. Depending on the characteristics of the array, the consequent improved load balancing can increase the total I/O throughput. However, this feature should only be enabled if recommended by the array vendor. It has no effect for array types other than A/A-A.

The following example command sets the balanced I/O policy on the enclosure enc0, and allows scheduling of I/O requests on the secondary paths.

In this example, the partition size is 4096 blocks (2MB).

# vxdmpadm setattr enclosure enc0 iopolicy=balanced \
      partitionsize=4096 use_all_paths=yes

The default setting for this attribute is use_all_paths=no.

You can display the current setting for use_all_paths for an enclosure, arrayname or arraytype. To do this, specify the use_all_paths option to the vxdmpadm gettattr command.

# vxdmpadm getattr enclosure HDS9500-ALUA0 use_all_paths
ENCLR_NAME        DEFAULT        CURRENT
===========================================
HDS9500-ALUA0     no             yes

The use_all_paths attribute only applies to A/A-A arrays. For other arrays, the above command displays the message:

Attribute is not applicable for this array.