In BS2000 every disk is represented by a PDT (Physical Device Table) entry. Every I/O request for a disk is passed on by the device driver for execution to the I/O controller IOCNTRL in the form of a channel program.
If the PDT entry shows that the device is not active, the I/O request is started. Every additional I/O request for this device is only placed in a device queue by IOCNTRL at first. Only when the device is not active anymore will the next request in the queue be started. Since only one I/O request is allowed per disk at a time, the total duration of an I/O operation is the sum of the actual duration of the I/O operation plus the wait time.
Long wait times can be caused by:
several applications with high I/O loads working at the same time on a disk.
an application issuing its I/O request asynchronously to the IOCNTRL.
On the SU x86, IOCNTRL can by default start multiple requests for emulated disks in parallel (RSC function). No special settings are required.
To implement PAV functionality, BS2000 utilizes the fact that on a Fibre Channel a device can accept an I/O request while another I/O is still active. However, “Command Queuing” may not be disabled on the RAID system. PAV can be placed in service without any intervention in the RAID system.
A logical Parallel Access Volume is represented by a base device (BASE) and up to 7 alias devices (ALIAS). Base and alias devices are generated during the hardware generation as independent devices of the same type with different unit addresses and mnemonic device names, although they are generated in the same logical controller.
Alias devices are generated using IOGEN (see the “System Installation” manual [55]) or, during ongoing operation, using the ADD-IO-UNIT command with the PAV-ALIAS-DEVICE operand set.
The relationship between the base device and alias devices is determined dynamically by BS2000 when a device is attached with the ATTACH-DEVICE command. When BS2000 detects a base device, the corresponding alias devices are searched for on the same logical controller. These alias devices are implicitly attached. Alias devices can also be explicitly attached with ATTACH-DEVICE. However, an alias device cannot be attached if the associated base device is not attached.
When a base device is detached with the DETACH-DEVICE command, associated alias devices are always detached implicitly. An alias device can also be explicitly detached with DETACH-DEVICE.
When a base device and its alias devices are attached, IOCNTRL can start I/O requests for the PAV volume in parallel via base and alias devices.
A PAV volume is allocated (IMPORT-PUBSET or SET-DISK-PARAMETER command) via the base device. Even the read and write I/O requests are made via the base device in BS2000.
IOCNTRL distributes the I/O depending on the loads on the base and alias devices onto one of these. IOCNTRL in the native mode prefers the base device when all have the same load.
Information on all PAV devices is output with the SHOW-DEVICE-CONFIGURATION ..., INFORMATION=*PAV command.
Notes for use under VM2000
In order to obtain as even a distribution of I/Os for shared disks as possible under VM2000, IOCNTRL in the guest systems prefers the base device or an alias device, depending on the VM index of the virtual machine.
However, base or alias devices can also be explicitly defined for each guest system. The MODIFY-IO-UNIT UNIT-DEVICE=*DEVICE(NAME=...,STATE=*PAV-PREFERRED-DEVICE(...)) command is available for this purpose. One alias device can be specified as the preferred device for performing I/O for each guest system.
You will find detailed information on PAV under VM2000 in the “VM2000” manual [60].
Recommended applications for PAV
The use of PAV is urgently recommended for ETERNUS disk storage systems.
PAV provides enormous improvements in TP and batch mode when a large proportion of the data is located in the disk storage system’s cache. Simultaneous cache hits are supported; in parallel, a cache miss with physical disk access can also be executed. For a heavily utilized disk connected via n paths it can therefore make sense to generate n-1 alias devices. This enables the n-fold throughput of a disk without alias devices to be achieved.
When data backup takes place, it must be assumed that the cache is not sufficient and that the data must therefore be fetched from the disks for saving or written to the disks when it is restored. This is highly optimized in the disk storage system by means of asynchronous “Read Ahead” and “Delayed Fast Write”. The performance of these functions restricts the throughput during data backup.
To permit optimum data backup, the use of “large” Raid systems with high-speed disks is recommended, as is generation of a sufficient number of alias devices.
Extended PAV (XPAV)
The “extended PAV (XPAV)” function removes the restriction that an alias device must be located in the same logical controller as the base device. In addition to an existing logical controller, one or more logical controllers can be configured with 256 alias devices.
XPAV is particularly suitable for configurations in which PAV was not planned from the outset or in which no or only a few free addresses are available for alias devices.
Two XPAV variants are possible:
When the existing logical controller and the additional controller with the alias devices are generated on the same controller ports, no manual intervention in the disk controller nor any additional cabling is required.
When the existing logical controller and the additional controller with the alias devices are generated on different controller ports, the volumes in the disk controller must be assigned to additional ports. Additional cabling may also be required for the alias devices.
The generation restrictions are described in the “System Installation” manual [55].
Dynamic PAV (DPAV)
Static PAV requires careful planning with regard to future device utilization by generating a suitable number of alias devices. Naturally it is also possible to assign one or more alias devices to all disks in advance.
Dynamic PAV (the IORM function DPAV, see "IORM: Control of I/O resources") requires fewer alias devices. As with static PAV, alias devices must be generated, but it is not necessary to provide the maximum number of alias devices required for each volume up front. DPAV autonomously assigns alias devices to the volumes which profit most from this.
For Server Units that support FastDPAV, it is no longer recommended to use DPAV.
Fast Dynamic PAV (FastDPAV)
The “FastDPAV” function, an optimized DPAV, is offered for Server Units SU /390 that support a modification of the logical unit number (LUN) for alias devices when starting an I/O.
Advantages of FastDPAV compared to static PAV:
- FastDPAV requires significantly fewer alias devices.
- FastDPAV allows for a higher number of “normal” volumes, clones and snaps on the channel.
- FastDPAV allows for larger volumes despite identical I/O performance.
Advantages of FastDPAV compared to DPAV:
- FastDPAV does not require IORM for monitoring device utilization and switchover.
- FastDPAV requires no coordination with other systems.
- Alias devices are immediately available whenever required.
When using FastDPAV, a pool of FastDPAV alias devices is generated for a set of logical volumes with identical channel paths (connection from the channel to the port on the disk storage system), without a permanent assignment to one of these logical volumes. For a FastDPAV alias device, the LUN is only defined/modified when an I/O is started.
Notes for use
In native mode, BS2000 automatically activates all generated FastDPAV alias devices for I/O.
In VM mode, BS2000 only activates those generated FastDPAV alias devices that have been exclusively assigned to the guest system (or monitor system). The devices can be explicitly (using ADD-VM-DEVICES) or implicitly (using ATTACH-DEVICE) assigned, as long as the system has the required authorization.
When performing I/O, BS2000 only accesses the activated FastDPAV alias devices.
They can be deactivated using DETACH-DEVICE. If, in VM mode, the alias device has only been assigned implicitly, it is also withdrawn from the virtual machine.
FastDPAV can be used with or without static PAV.