Browse Prior Art Database

Scheduling of Computer Processing Among Groups of Users

IP.com Disclosure Number: IPCOM000088103D
Original Publication Date: 1977-Apr-01
Included in the Prior Art Database: 2005-Mar-04
Document File: 5 page(s) / 72K

Publishing Venue

IBM

Related People

Brown, DT: AUTHOR [+3]

Abstract

Introduction. The mechanism described below is a means of scheduling groups of tasks on a computer system in such a way that each group of tasks, called a pool, collectively receives processing at a rate that has been requested for the pool. Processing is the execution of instructions by a processing unit of a computer system, and a task is the performance of some function through the execution of a sequence of instructions. For a given processing unit, processing is proportional to time spent executing instructions on the processing unit. Processing rate is processing per unit of time.

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 29% of the total text.

Page 1 of 5

Scheduling of Computer Processing Among Groups of Users

Introduction. The mechanism described below is a means of scheduling groups of tasks on a computer system in such a way that each group of tasks, called a pool, collectively receives processing at a rate that has been requested for the pool. Processing is the execution of instructions by a processing unit of a computer system, and a task is the performance of some function through the execution of a sequence of instructions. For a given processing unit, processing is proportional to time spent executing instructions on the processing unit. Processing rate is processing per unit of time.

The requested rates for the pools exist in a table that has been externally created. The table contains levels and, for each level, contains a requested rate for each pool. The total rate the system can deliver and the rate individual groups can use can both vary over time. When this happens, the rate level is changed through a mechanism to be described. The change in rate level specifies a new distribution of processing among the groups.

When a level has been determined, the mechanism selects a pool to receive processing. This selection is done so that (insofar as is possible) each pool receives its requested rate. After the pool selection, a task within the pool is selected and given a quantity of processing (P) before it returns to its pool. Many techniques exist for scheduling tasks and any of these might be used to make the task selection. The technique must resolve any competition criteria among tasks (such as requested processing rates for tasks) and provide for efficient system operation. The mechanism described here only selects among pools. It operates above and independently of the task selection technique. The Processing Rate Table.

Let the tasks on the system be divided into n pools. The processing rate table has n columns and m rows called levels, numbered from 1 to (m = 64 in the specific implementation to be given). Each table entry is a processing rate requested for a pool at a level. In a column, each entry is equal to or greater than entries for lower numbered levels.

Distribution of processinq to pools is according to the current level (C) which is the lowest numbered level that uses all the processing rate the system can give without any pool receiving more rate than is specified for it. An important aspect of the mechanism to be described is a way of correctly determining C and dynamically varying the value of C as the ability of pools to use rate varies and as the ability of the system to deliver rate varies.

As a simple example, consider three pools and three levels. The entries for level 1 are 1,0,0; the entries for level 2 are 1,3, 0; and the entries for level 3 are 1,3,100. The first pool is always given one unit of rate, if available and if it can use it. The second pool gets the rest, up to three units, if it can use it. The third pool gets any remaining rate. Here...