Efficient Local Search for DAG Scheduling

Scheduling DAGs to multiprocessors is one of the key issues in high-performance computing. Most realistic scheduling algorithms are heuristic and heuristic algorithms often have room for improvement. The quality of a scheduling algorithm can be effectively improved by a local search. In this paper, we present a fast local search algorithm based on topological ordering. This is a compaction algorithm that can effectively reduce the schedule length produced by any DAG Scheduling algorithm. Thus, it can improve the quality of existing DAG scheduling algorithms. This algorithm can quickly determine the optimal search direction. Thus, it is of low complexity and extremely fast.

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

[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]  Jun Gu,et al.  FAST: a low-complexity algorithm for efficient scheduling of DAGs on parallel processors , 1996, Proceedings of the 1996 ICPP Workshop on Challenges for Parallel Processing.

[5]  Rok Sosic,et al.  Fast search algorithms for the n-queens problem , 1991, IEEE Trans. Syst. Man Cybern..

[6]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[7]  Jun Gu,et al.  Microword length minimization in microprogrammed controller synthesis , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[8]  K. Mani Chandy,et al.  A comparison of list schedules for parallel processing systems , 1974, Commun. ACM.

[9]  S. Ranka,et al.  Applications and performance analysis of a compile-time optimization approach for list scheduling algorithms on distributed memory multiprocessors , 1992, Proceedings Supercomputing '92.

[10]  Rok Sosic,et al.  Efficient Local Search with Conflict Minimization: A Case Study of the n-Queens Problem , 1994, IEEE Trans. Knowl. Data Eng..

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

[12]  Hesham H. Ali,et al.  Task scheduling in parallel and distributed systems , 1994, Prentice Hall series in innovative technology.

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

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

[15]  Jun Gu,et al.  Local search for satisfiability (SAT) problem , 1993, IEEE Trans. Syst. Man Cybern..

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

[17]  Ishfaq Ahmad,et al.  FASTEST: A Practical Low-Complexity Algorithm for Compile-Time Assignment of Parallel Programs to Multiprocessors , 1999, IEEE Trans. Parallel Distributed Syst..

[18]  Jun Gu,et al.  Efficient local search for very large-scale satisfiability problems , 1992, SGAR.

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

[20]  Tao Yang,et al.  PYRROS: static task scheduling and code generation for message passing multiprocessors , 1992 .

[21]  Jun Gu,et al.  Average Time Complexity of the SAT 1.2 Algorithm , 1994, ISAAC.

[22]  Rok Sosic,et al.  How to search for million queens , 1988 .

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

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

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