Link contention-constrained scheduling and mapping of tasks and messages to a network of heterogeneous processors

In this paper, we consider the problem of scheduling and mapping precedence-constrained tasks to a network of heterogeneous processors. In such systems, processors are usually physically distributed, implying that the communication cost is considerably higher than in tightly coupled multiprocessors. Therefore, scheduling and mapping algorithms for such systems must schedule the tasks as well as the communication traffic by treating both the processors and communication links as equally important resources. We propose an algorithm that achieves these objectives and adapts its task scheduling and mapping decisions according to the given network topology. Just like tasks, messages are also scheduled and mapped to suitable links during the minimization of the finish times of tasks. Heterogeneity of processors is exploited by scheduling critical tasks to the fastest processors. Our experimental study has demonstrated that the proposed algorithm is efficient and robust, and yields consistent performance over a wide range of scheduling parameters.

[1]  Arif Ghafoor,et al.  Estimating execution time for parallel tasks in heterogeneous processing (HP) environment , 1994, Proceedings Heterogeneous Computing Workshop.

[2]  Ishfaq Ahmad,et al.  Efficient Scheduling of Arbitrary TAsk Graphs to Multiprocessors Using a Parallel Genetic Algorithm , 1997, J. Parallel Distributed Comput..

[3]  Ishfaq Ahmad,et al.  Benchmarking the task graph scheduling algorithms , 1998, Proceedings of the First Merged International Parallel Processing Symposium and Symposium on Parallel and Distributed Processing.

[4]  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..

[5]  Dongseung Kim,et al.  A Two-Pass Scheduling Algorithm for Parallel Programs , 1994, Parallel Comput..

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

[7]  R. F. Freund,et al.  Guest Editor's Introduction: Heterogeneous Processing , 1993 .

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

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

[10]  Ishfaq Ahmad,et al.  On Exploiting Task Duplication in Parallel Program Scheduling , 1998, IEEE Trans. Parallel Distributed Syst..

[11]  Ishfaq Ahmad,et al.  CASCH: A Software Tool for Automatic Parallelization and Scheduling of Programs on Message-Passing Multiprocessors , 1999 .

[12]  Y.-K. Kwok,et al.  Static scheduling algorithms for allocating directed task graphs to multiprocessors , 1999, CSUR.

[13]  Jing-Chiou Liou,et al.  Task Clustering and Scheduling for Distributed Memory Parallel Architectures , 1996, IEEE Trans. Parallel Distributed Syst..

[14]  Thomas Fahringer Estimating and Optimizing Performance for Parallel Programs , 1995, Computer.

[15]  Albert Y. Zomaya,et al.  A Framework for Reinforcement-Based Scheduling in Parallel Processor Systems , 1998, IEEE Trans. Parallel Distributed Syst..

[16]  Zhiwei Xu,et al.  Benchmark Evaluation of the IBM SP2 for Parallel Signal Processing , 1996, IEEE Trans. Parallel Distributed Syst..

[17]  Ishfaq Ahmad,et al.  Dynamic Critical-Path Scheduling: An Effective Technique for Allocating Task Graphs to Multiprocessors , 1996, IEEE Trans. Parallel Distributed Syst..

[18]  Ishfaq Ahmad,et al.  Automatic parallelization and scheduling of programs on multiprocessors using CASCH , 1997, Proceedings of the 1997 International Conference on Parallel Processing (Cat. No.97TB100162).

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

[20]  Yves Robert,et al.  Parallel Gaussian elimination on an MIMD computer , 1988, Parallel Comput..

[21]  Behrooz Shirazi,et al.  Analysis and Evaluation of Heuristic Methods for Static Task Scheduling , 1990, J. Parallel Distributed Comput..

[22]  Lee C. Potter,et al.  Statistical prediction of task execution times through analytic benchmarking for scheduling in a heterogeneous environment , 1999, Proceedings. Eighth Heterogeneous Computing Workshop (HCW'99).

[23]  Michel Cosnard,et al.  Automatic task graph generation techniques , 1995, Proceedings of the Twenty-Eighth Annual Hawaii International Conference on System Sciences.

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

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

[26]  Arif Ghafoor,et al.  A distributed heterogeneous supercomputing management system , 1993, Computer.

[27]  Michael G. Norman,et al.  Models of machines and computation for mapping in multicomputers , 1993, CSUR.

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

[29]  John K. Antonio,et al.  Software support for heterogeneous computing , 1996, CSUR.