Methods and apparatus for scheduling parallel processors
First Claim
1. A method of parallel processing, comprising:
- selecting, in an assignment manager, a sequential schedule to determine priorities for processing;
assigning, in the assignment manager, live tasks available for scheduling according to priorities on the basis of the sequential schedule;
making, in the assignment manager, the highest priority live tasks that are available for scheduling available for processing by parallel processing elements;
extracting, by said processing elements, available tasks for processing into each of said processing elements; and
executing tasks from the extracted tasks in each of the processing elements;
said sequential schedule and determining of priorities being independent of the execution of the extracted tasks in the processing elements;
choosing, in the assignment manager, an operating criterion for execution of the extracted tasks in the processing elements; and
said executing of tasks in each of said processing elements including executing extracted tasks until the criterion is reached and then feeding information concerning the execution to the assignment manager.
14 Assignments
0 Petitions
Accused Products
Abstract
A parallel processing method involves the steps of determining a sequential ordering of tasks for processing, assigning priorities to available tasks on the basis of the earliest and then later in the sequential ordering, selecting a number of tasks greater than a total number of available parallel processing elements from all available tasks having the highest priorities, partitioning the selected tasks into a number of groups equal to the available number of parallel processing elements, and executing the tasks in the groups in the parallel processing elements. The determining step establishes an ordering with a specific predetermined sequential schedule that is independent of the parallel execution, and the assigning step assigns priorities for parallel execution on the basis of the sequential schedule that is independent of the parallel execution.
-
Citations
34 Claims
-
1. A method of parallel processing, comprising:
-
selecting, in an assignment manager, a sequential schedule to determine priorities for processing;
assigning, in the assignment manager, live tasks available for scheduling according to priorities on the basis of the sequential schedule;
making, in the assignment manager, the highest priority live tasks that are available for scheduling available for processing by parallel processing elements;
extracting, by said processing elements, available tasks for processing into each of said processing elements; and
executing tasks from the extracted tasks in each of the processing elements;
said sequential schedule and determining of priorities being independent of the execution of the extracted tasks in the processing elements;
choosing, in the assignment manager, an operating criterion for execution of the extracted tasks in the processing elements; and
said executing of tasks in each of said processing elements including executing extracted tasks until the criterion is reached and then feeding information concerning the execution to the assignment manager. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18)
-
-
17. An apparatus for parallel processing, comprising:
-
an assignment manager having coded therein a sequential schedule to determine priorities for processing;
the assignment manager being responsive to live tasks available for scheduling according to priorities on the basis of the sequential schedule;
the assignment manager being responsive to the highest priority live tasks that are available for scheduling available for processing;
a plurality of task-extracting and task-executing processing elements respectively responsive to available tasks so that said processing elements execute tasks from the tasks extracted into each of the processing elements;
said sequential schedule for determining of priorities in said assignment manager being independent of the execution of the executed tasks in the processing elements;
said assignment manager having an operating criterion for governing execution of the extracted tasks in the processing elements; and
said task-extracting and task-executing processing elements being responsive to said criterion and including a status feedback arrangement to said assignment manager in response to said criterion. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34)
-
Specification