A comparison of heuristics for scheduling DAGs on multiprocessors

Many algorithms to schedule directed acyclic graphs (DAGs) on multiprocessors have been proposed, but there has been little work done to determine their effectiveness. Since multiprocessor scheduling is an NP-hard problem, no exact tractable algorithm exists, and no baseline is available from which to compare the resulting schedules. This paper is an attempt to quantify the differences in a few of the heuristics. The empirical performance of five heuristics is compared when they are applied to ten specific DAGs which represent program dependence graphs of important applications. The comparison is made between a graph based method a list scheduling technique and three critical path methods.<<ETX>>

[1]  Janak H. Patel,et al.  The LAST Algorithm: A Heuristic-Based Static Task Allocation Algorithm , 1989, International Conference on Parallel Processing.

[2]  Hesham El-Rewini,et al.  Scheduling Parallel Program Tasks onto Arbitrary Target Machines , 1990, J. Parallel Distributed Comput..

[3]  Vivek Sarkar,et al.  Partitioning and Scheduling Parallel Programs for Multiprocessing , 1989 .

[4]  Frank D. Anger,et al.  Scheduling with Sufficient Loosely Coupled Processors , 1990, J. Parallel Distributed Comput..

[5]  Wang Ho Yu,et al.  Lu decomposition on a multiprocessing system with communications delay , 1984 .

[6]  Boontee Kruatrachue,et al.  Grain size determination for parallel processing , 1988, IEEE Software.

[7]  Mihalis Yannakakis,et al.  Towards an architecture-independent analysis of parallel algorithms , 1990, STOC '88.

[8]  Tzong-Jer Yang,et al.  A comparison of clustering heuristics for scheduling dags on multiprocessors , 1990 .

[9]  Ellis Horowitz,et al.  Fundamentals of Computer Algorithms , 1978 .

[10]  Zhen Liu,et al.  A Note on Graham's Bound , 1990, Inf. Process. Lett..

[11]  J. J. Thompson,et al.  Partitioning and Scheduling Using Graph Decomposition , 1993 .

[12]  James C. Browne,et al.  General approach to mapping of parallel computations upon multiprocessor architectures , 1988 .

[13]  Daniel Gajski,et al.  Hypertool: A Programming Aid for Message-Passing Systems , 1990, IEEE Trans. Parallel Distributed Syst..

[14]  Jing-Jang Hwang,et al.  Multiprocessor scheduling with interprocessor communication delays , 1988 .

[15]  Ronald L. Graham,et al.  Bounds on Multiprocessing Timing Anomalies , 1969, SIAM Journal of Applied Mathematics.

[16]  Christos H. Papadimitriou,et al.  A Communication-Time Tradeoff , 1987, SIAM J. Comput..

[17]  Mihalis Yannakakis,et al.  Towards an Architecture-Independent Analysis of Parallel Algorithms , 1990, SIAM J. Comput..

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

[19]  Edward G. Coffman,et al.  Computer and job-shop scheduling theory , 1976 .

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

[21]  Daniel Gajski,et al.  A Programming Aid for Message-passing Systems , 1987, PPSC.

[22]  E. Reingold,et al.  Combinatorial Algorithms: Theory and Practice , 1977 .

[23]  Tao Yang,et al.  Clustering task graphs for message passing architectures , 1990, ICS '90.

[24]  Stanley M. Dunn,et al.  Using an architectural knowledge base to generate code for parallel computers , 1989, CACM.

[25]  Frank D. Anger,et al.  Scheduling Precedence Graphs in Systems with Interprocessor Communication Times , 1989, SIAM J. Comput..

[26]  T. C. Hu Parallel Sequencing and Assembly Line Problems , 1961 .

[27]  Carolyn McCreary,et al.  Automatic determination of grain size for efficient parallel processing , 1989 .

[28]  Carolyn McCreary,et al.  Automatic determination of grain size for efficient parallel processing , 1989, CSC '89.