An optimal scheduling algorithm for minimizing the computing period of cyclic synchronous tasks on multiprocessors
We present an efficient optimal algorithm that schedules cyclic synchronous tasks into multiprocessors to minimize the computing period of iterative execution. Due to the rapid development of higher speed microprocessors and digital signal processors (DSPs), small-scale parallel embedded systems and on-chip parallel processors with a simple network structure became feasible for applications such as large-scale simulations and computation-intensive plant control systems that were previously executed by massively parallel computers. We consider cyclic synchronous tasks with communication overhead, which run on multiprocessors with a fully connected network. We suggest the computing period as the performance measure to maximize overall computation speed and the individual start policy that allows overlapping different iterations. The concepts and characteristics of the local period and the global period are also introduced. To solve the complex optimal scheduling problem in an efficient way, our algorithm uses a new spatial scheduling technique using the scheduling space which represents all possible start-time schedules in a multi-dimensional space. By using spatial searching and an enhanced branch-and-bound technique, the optimal schedule which minimizes the computing period can be found. The scheduling results for power plant simulation verify the practicality of our algorithm.
computing period scheduling space parallel computing system cycle synchronous tasks optimal task scheduling schedulable area