Multi-processor system
First Claim
Patent Images
1. A system for simultaneously processing a plurality of tasks comprising:
- a plurality of processors for simultaneously processing said tasks;
a common memory containing a task control table, said task control table having a plurality of task entries accessible to said processors for fetching corresponding tasks indicated in the task entries and processing the tasks, each of the task entries having information about a type of task and whether the task has already been fetched by a processor; and
a synchronization point in the task control table having a parameter list of at least one selected task entry which must be completed before any of the processors access a task entry subsequent to the synchronization point, and information whether the parameter list has been completed;
wherein the task entries subsequent to the synchronization point are accessible to the processors whether or not task entries prior to the synchronization point which are absent from the parameter list have been completed.
2 Assignments
0 Petitions
Accused Products
Abstract
A multiprocessor system is disclosed wherein optimum utilization of all active processors is achieved for processing of static task packets. Active processors in a multiprocessor system independently fetch tasks from a central task control table of common memory for processing. The processors wait at a synchronization point until the conditions determined by the synchronization point have been satisfied.
66 Citations
11 Claims
-
1. A system for simultaneously processing a plurality of tasks comprising:
-
a plurality of processors for simultaneously processing said tasks; a common memory containing a task control table, said task control table having a plurality of task entries accessible to said processors for fetching corresponding tasks indicated in the task entries and processing the tasks, each of the task entries having information about a type of task and whether the task has already been fetched by a processor; and a synchronization point in the task control table having a parameter list of at least one selected task entry which must be completed before any of the processors access a task entry subsequent to the synchronization point, and information whether the parameter list has been completed; wherein the task entries subsequent to the synchronization point are accessible to the processors whether or not task entries prior to the synchronization point which are absent from the parameter list have been completed. - View Dependent Claims (2, 3, 4, 5, 6, 10, 11)
-
-
7. A method for processing a task packet with a plurality of processors comprising the steps of:
-
processing a first group of tasks preceding a synchronization point in the order in which the tasks are listed in a task control table with a number of different processors; identifying at least one task of the first group of tasks by a synchronization point parameter list which must be completed before any of the processors access a task subsequent to the synchronization point; verifying that all tasks of the synchronization point parameter list have been completed before processing an additional task with a processor that has reached the synchronization point; and processing a second group of tasks after the synchronization point with the number of different processors whether or not a task of the first group of tasks preceding the synchronization point which is absent from the synchronization point parameter list has been completed. - View Dependent Claims (8)
-
-
9. A method or processing a plurality of tasks with a plurality of processors comprising the steps of:
-
generating a task control table; processing a plurality of said tasks from said task control table with a plurality of processors; while processing at least one of said tasks with a corresponding processor, repeating a step of assigning a next task from the task control table to a next available processor and processing said task with said processor; for each task completed by a processor, updating the task control table to reflect completion of the task; accessing a parameter list of a synchronization point in the task control table with one of the processors; identifying at least one task by the parameter list which must be completed before any of the processors access a task entry subsequent to the synchronization point; preventing the processors from accessing all tasks subsequent to the synchronization point until all of the tasks identified in the parameter list have been completed; and allowing task entries subsequent to the synchronization point to be accessed by at least one of the processors whether or not task entries prior to the synchronization point which are absent from the parameter list have been completed.
-
Specification