Task scheduler for a miltiprocessor system
AssigneeInternational Business Machines Corporation
InventorsJoel L. Wolf, Philip S. Yu, John J. E. Turek
Life of this patent
Estimating the term…
Loading patent…
AssigneeInternational Business Machines Corporation
InventorsJoel L. Wolf, Philip S. Yu, John J. E. Turek
Estimating the term…
A task scheduler for use in a multiprocessor, multitasking system in which a plurality of processor complexes, each containing one or more processors, concurrently execute tasks into which jobs such as database queries are divided. A desired level of concurrent task activity, such as the maximum number of tasks that can be executed concurrently without queuing of tasks, is defined for each processor complex. Each job is assigned a weight in accordance with the external priority accorded to the job. For each job there is defined a desired level of concurrent; task activity that is proportional to its share of the total weight assigned to all concurrently executing jobs. The jobs are prioritized for execution of awaiting tasks in accordance with the discrepancy between the desired level of multitasking activity and the actual level of multitasking activity for each job. Awaiting tasks are preferentially scheduled from jobs with the largest discrepancy between the desired and actual levels of concurrent task activity and are preferentially assigned to the processor complexes with the largest discrepancy between the desired and actual levels of concurrent task activity. The scheduler attempts to assign each task to a processor for which the task has an affinity or at least neutrality in terms of relative execution speed.
In a multitasking system in which a plurality of jobs are concurrently executed, each of said jobs comprising one or more tasks, a method for scheduling said tasks comprising the steps of:
In a multitasking system in which a plurality of jobs are concurrently executed by a plurality of processor complexes, each of said jobs comprising one or more tasks, each of said processor complexes comprising one or more processors, a method of scheduling said tasks comprising the steps of:
In a multitasking, multiprocessor system in which a plurality of tasks are concurrently executed on a plurality of processor complexes, each of said tasks having a defined affinity, neutrality or disaffinity for each of said complexes, a method for scheduling said tasks on said complexes comprising the steps of:
In a multitasking, multiprocessor system in which a plurality of tasks are concurrently executed on a plurality of processor complexes, said tasks and said complexes forming task-complex combinations in each of which the task has a defined affinity, neutrality or disaffinity for the complex of the combination, a method for scheduling said tasks on said complexes comprising the steps of:
Dependencies are inferred from the claim text.