Scalable scheduling algorithm for distributed memory machines

The problem of scheduling tasks onto distributed memory machines for obtaining an optimal schedule is an NP-complete problem. We present a scalable scheduling algorithm which can schedule the tasks of directed acyclic graphs (DAGs) with a complexity of O(V/sup 2/) in the worst case, where V is the number of nodes of the DAG. This algorithm generates an optimal schedule for a class of DAGs which satisfy certain conditions and if the required number of processors are available. The algorithm initially generates a schedule for a small number of processors. In case the available number of processors are higher than the number of processors required by the initial schedule, the algorithm scales the schedule appropriately in an effort to obtain a lower parallel time by utilizing the extra or idle processors. The algorithm has been applied to some practical DAGs and the results are very promising.

[1]  Ishfaq Ahmad,et al.  A New Approach to Scheduling Parallel Programs Using Task Duplication , 1994, 1994 Internatonal Conference on Parallel Processing Vol. 2.

[2]  Edward A. Lee,et al.  A Compile-Time Scheduling Heuristic for Interconnection-Constrained Heterogeneous Processor Architectures , 1993, IEEE Trans. Parallel Distributed Syst..

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

[4]  Dharma P. Agrawal,et al.  A Scalable Scheduling Scheme for Functional Parallelism on Distributed Memory Multiprocessor Systems , 1995, IEEE Trans. Parallel Distributed Syst..

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

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

[7]  Boontee Kruatrachue,et al.  Static task scheduling and grain packing in parallel processing systems , 1987 .

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

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

[10]  Dharma P. Agrawal,et al.  A fast and scalable scheduling algorithm for distributed memory systems , 1995, Proceedings.Seventh IEEE Symposium on Parallel and Distributed Processing.

[11]  Dharma P. Agrawal,et al.  A Threshold Scheduling Strategy for Sisal on Distributed Memory Machines , 1994, J. Parallel Distributed Comput..

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

[13]  D. P. Agrawal,et al.  SDBS: a task duplication based optimal scheduling algorithm , 1994, Proceedings of IEEE Scalable High Performance Computing Conference.

[14]  Philippe Chrétienne,et al.  C.P.M. Scheduling with Small Communication Delays and Task Duplication , 1991, Oper. Res..

[15]  Carolyn McCreary,et al.  A Comparison of Multiprocessor Scheduling Heuristics , 1994, 1994 Internatonal Conference on Parallel Processing Vol. 2.