Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Load Balancing Buffered Peripheral Subsystem

IP.com Disclosure Number: IPCOM000052634D
Original Publication Date: 1981-Jun-01
Included in the Prior Art Database: 2005-Feb-11
Document File: 3 page(s) / 60K

Publishing Venue

IBM

Related People

McLaughlin, JA: AUTHOR

Abstract

A peripheral subsystem having a plurality of buffered control units enables access to a plurality of devices from a plurality of hosts. Because loading can vary between the various buffered control units, the present article shows a dynamic procedure for balancing the buffered control unit activity for maximizing the efficiency of the peripheral subsystem. Balancing is based upon depth of work queues for the various buffered control units. Threshold detection is employed. Balancing occurs during a pause in device activity.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 52% of the total text.

Page 1 of 3

Load Balancing Buffered Peripheral Subsystem

A peripheral subsystem having a plurality of buffered control units enables access to a plurality of devices from a plurality of hosts. Because loading can vary between the various buffered control units, the present article shows a dynamic procedure for balancing the buffered control unit activity for maximizing the efficiency of the peripheral subsystem. Balancing is based upon depth of work queues for the various buffered control units. Threshold detection is employed. Balancing occurs during a pause in device activity.

Before describing the balancing techniques, the environment in which the balancing occurs will be described. A plurality of control units can be managed by a system manager which can comprise a separate unit or can be a floating program between the various control units, or can be employed as a distributed processing program among the various control units. Each buffer of various buffered control units is partitioned into buffer segments that can be dynamically allocated to support data processing activities between the individual devices and the individual hosts. When in a read mode, i.e., transfer of data signals from devices to hosts, anticipatory reading occurs between the devices and the buffered control unit. This action places blocks of data in the buffer in anticipation of requests for data from the host. For a write mode, i.e., transfer of data from hosts to the devices, prior to writing the data on the device, blocks of data move into the various buffers of the control unit. Accordingly, device operation is highly asynchronous with respect to operations of the hosts.

At any given instant, a device may have buffer space allocated in only one control unit. It may occur that bursts of activity occur with devices allocated to the same buffered control unit. Then the buffer path of that control unit may reach a critical loading, while the paths provided through other buffered control units by alternate pathing techniques may be under-utilized. The present article shows a technique for shifting buffer assignments for various devices between control units for nearly balancing the activity of the control unit without introducing intermediate device activity (such as tape movement in a tape device, waiting for a disk to rotate in a disk device, waiting for paper feed in a printing device, and the like) or special activity by the host. Generally, at predetermined times device interface work queues for the devices 00...36 for the various control units A,B,C,D are examined in each of the control units. Further device allocations and buffer allocations are examined and shifted to other control units. If one con...