Abstract A process for producing a parallel processor system having the minimum number of microprocessors necessary execute in real time a set of tasks of a multi-tasking application such that execution of an activity of a first task is followed by execution of an activity of a second task. The process includes the step of selecting an initial number of microprocessors for executing the application in real-time. The selecting step includes placing in a first column of a matrix all real-time constrained tasks specific to the application and associating a row of dependent tasks with each task placed in the first column of the matrix to define a plurality of task subsets, each subset incorporating a maximum number of intradependent tasks and a minimum number of interdependent tasks and the number of subsets corresponding to the initial number of microprocessors. The inventive process further includes the steps of listing dependencies between rows in a second column of the matrix, assigning a priority pi to each task where pi is between 0 and 1, subdividing at least one of the tasks into discrete activities, each of the activities having a corresponding execution time tij, estimating the execution time for each activity, reducing the number of rows in the matrix by grouping together tasks having activities that can be executed within a predetermined time window T, and providing a number of microprocessors corresponding to the number of rows obtained from the rows reducing step.
A process for defining a parallel processor system having a minimum number of microprocessors necessary to execute in real time a set of tasks of a multi-tasking application such that execution of an activity of a first task is followed by execution of an activity of a second task, comprising the steps of: (a) selecting an initial number of microprocessors for executing the application in real-time, said selecting step including: placing in a first column of a matrix all real-time constrained tasks specific to said application; and associating a row of dependent tasks with each task placed in the first column of the matrix to define a plurality of task subsets, each task subset comprising a maximum number of intradependent tasks and a minimum number of interdependent tasks, and said plurality of task subsets corresponding to the initial number of microprocessors; (b) listing dependencies between rows in a second column of the matrix; (c) assigning a priority Pi to each task, where p i is between 0 and 1; (d) subdividing at least one of the tasks into discrete activities, each of said activities having a corresponding execution time t ij ; (e) estimating the execution time for each activity; (f) reducing the number of rows in the matrix by grouping together tasks having activities which can be executed within a predetermined time window T; and (g) providing a final number of microprocessors corresponding to the number of rows obtained from said reducing step.
Claim 2
Dependent Claim
244 words
A process for defining a parallel processor system having a minimum number of microprocessors necessary to execute in real time a set of tasks of a multi-tasking application such that execution of an activity of a first task is followed by execution of an activity of a second task, comprising the steps of: (a) selecting an initial number of microprocessors for executing the application in real-time, said selecting step including: placing in a first column of a matrix all real-time constrained tasks specific to said application; and associating a row of dependent tasks with each task placed in the first column of the matrix to define a plurality of task subsets, each task subset comprising a maximum number of intradependent tasks and a minimum number of interdependent tasks, and said plurality of task subsets corresponding to the initial number of microprocessors; (b) listing dependencies between rows in a second column of the matrix; (c) assigning a priority Pi to each task, where p i is between 0 and 1; (d) subdividing at least one of the tasks into discrete activities, each of said activities having a corresponding execution time t ij ; (e) estimating the execution time for each activity; (f) reducing the number of rows in the matrix by grouping together tasks having activities which can be executed within a predetermined time window T; and (g) providing a final number of microprocessors corresponding to the number of rows obtained from said reducing step.
Claim 3
Dependent Claim
17 words
The process of claim 1, wherein all tasks with real-time restraints are subdivided during said subdividing step.
Claim 4
Dependent Claim
19 words
The process of claim 1, wherein all tasks with a priority of p=1 are subdivided during said subdividing step.