A parallel compiler scheduler

This paper presents a static scheduler which selects, from a set of scheduling algorithms, a subset of those which carry out the best assignment of a DAG representing an application program. To make that selection, some characteristics of the DAG, a decision model, and the evaluation parameters for choosing the best solution provided by the selected scheduling algorithms are defined. The selection of the scheduling algorithms is based on five decision levels. At each level, a subset of scheduling algorithms is selected. The final decision is made by carrying out an intersection operation between the subsets. When the scheduler was tested with a series of DAGs having different characteristics, the scheduler's decision was right 95% of the time in those cases in which the number of available processors is known, and 75% of the time when the number of processors is unbounded.

[1]  Tao Yang,et al.  DSC: Scheduling Parallel Tasks on an Unbounded Number of Processors , 1994, IEEE Trans. Parallel Distributed Syst..

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

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

[4]  Karen Lee Pieper Parallelizing compilers: implementation and effectiveness , 1993 .

[5]  Ishfaq Ahmad,et al.  Benchmarking and Comparison of the Task Graph Scheduling Algorithms , 1999, J. Parallel Distributed Comput..

[6]  Monica S. Lam,et al.  Maximizing Multiprocessor Performance with the SUIF Compiler , 1996, Digit. Tech. J..

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

[8]  Mihalis Yannakakis,et al.  Scheduling Interval-Ordered Tasks , 1979, SIAM J. Comput..

[9]  Honbo Zhou,et al.  Scheduling DAGs on a Bounded Number of Processors , 1996, PDPTA.

[10]  Michael Pinedo,et al.  Scheduling: Theory, Algorithms, and Systems , 1994 .

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

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

[13]  Tao Yang,et al.  List Scheduling With and Without Communication Delays , 1993, Parallel Comput..

[14]  Jeffrey D. Ullman,et al.  NP-Complete Scheduling Problems , 1975, J. Comput. Syst. Sci..

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

[16]  Hesham El-Rewini,et al.  Parallax: a tool for parallel program scheduling , 1993, IEEE Parallel & Distributed Technology: Systems & Applications.