Scheduling of periodic time critical applications for pipelined execution on heterogeneous systems

Allocation of tasks of a periodic, time critical application, onto a set of processors, with task duplication is examined here. Pipelined execution, where computations and communications take place simultaneously, is employed to meet the required flow rate of the application. The prime objective of the algorithm is to reduce the number of pipeline stages and/or the pipeline period and thereby reducing pipeline latency. The algorithm is well suited for both homogeneous and heterogeneous systems and it is scalable. The order of complexity of the algorithm is O(/spl nu//sup 2/), where /spl nu/ is the number of nodes in directed acyclic task graph (DAG) representing the application. Simulations have indicated that the proposed algorithm generates 9%-52% shorter pipelines.

[1]  Joseph Y.-T. Leung,et al.  On the complexity of fixed-priority scheduling of periodic, real-time tasks , 1982, Perform. Evaluation.

[2]  Dharma P. Agrawal,et al.  A task duplication based scheduling algorithm for heterogeneous systems , 2000, Proceedings 14th International Parallel and Distributed Processing Symposium. IPDPS 2000.

[3]  Kang G. Shin,et al.  Allocation of periodic task modules with precedence and deadline constraints in distributed real-time systems , 1992, [1992] Proceedings Real-Time Systems Symposium.

[4]  E.L. Lawler,et al.  Optimization and Approximation in Deterministic Sequencing and Scheduling: a Survey , 1977 .

[5]  Tao Yang,et al.  A Comparison of Clustering Heuristics for Scheduling Directed Acycle Graphs on Multiprocessors , 1992, J. Parallel Distributed Comput..

[6]  Krithi Ramamritham,et al.  Allocation and Scheduling of Precedence-Related Periodic Tasks , 1995, IEEE Trans. Parallel Distributed Syst..

[7]  Dharma P. Agrawal,et al.  A Framework for Mapping Periodic Real-Time Applications on Multicomputers , 1994, IEEE Trans. Parallel Distributed Syst..

[8]  Dharma P. Agrawal,et al.  A Task Duplication Based Scalable Scheduling Algorithm for Distributed Memory Systems , 1997, J. Parallel Distributed Comput..

[9]  J. Tukey,et al.  An algorithm for the machine calculation of complex Fourier series , 1965 .

[10]  Brigitte Plateau,et al.  Building Synthetic Parallel Programs: the Project ALPES , 1992, Programming Environments for Parallel Computing.

[11]  Emmanuel Jeannot,et al.  Compact DAG Representation and Its Dynamic Scheduling , 1999, J. Parallel Distributed Comput..

[12]  Shridhar Bhalchandra Shukla On parallel processing for real-time artificial vision , 1991 .

[13]  Sang Hyuk Son,et al.  New Strategies for Assigning Real-Time Tasks to Multiprocessor Systems , 1995, IEEE Trans. Computers.

[14]  Dharma P. Agrawal,et al.  Optimal Scheduling Algorithm for Distributed-Memory Machines , 1998, IEEE Trans. Parallel Distributed Syst..

[15]  Füsun Özgüner,et al.  Precedence-Constrained Task Allocation onto Point-to-Point Networks for Pipelined Execution , 1999, IEEE Trans. Parallel Distributed Syst..