Abstract
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.
Similar content being viewed by others
References
I. Ahmad and Y.-K. Kwok, On exploiting task duplication in parallel program scheduling, IEEE Transactions on Parallel and Distributed Systems 9(9) (September 1998) 872–892.
I. Ahmad, Y.-K. Kwok, M.-Y. Wu and W. Shu, CASCH: A software tool for automatic parallelization and scheduling of programs on message-passing multiprocessors, IEEE Concurrency (2000) to appear.
M. Cosnard and M. Loi, Automatic task graphs generation techniques, Parallel Processing Letters 5(4) (December 1995) 527–538.
M. Cosnard, M. Marrakchi, Y. Robert and D. Trystam, Parallel Gaussian elimination on an MIMD computer, Parallel Computing 6 (1988) 275–296.
H. El-Rewini, T.G. Lewis and H.H. Ali, Task Scheduling in Parallel and Distributed Systems (Prentice-Hall, Englewood Cliffs, NJ, 1994).
T. Fahringer, Estimating and optimizing performance for parallel programs, IEEE Computer 28(11) (November 1995) 47–56.
R.F. Freund and H.J. Siegel, Heterogeneous processing, IEEE Computer 26(6) (June 1993) 13–17.
M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness (Freeman, 1979).
A. Ghafoor and J. Yang, A distributed heterogeneous supercomputing management system, IEEE Computer 26(6) (June 1993) 78–86.
K. Hwang, Z. Xu and M. Arakawa, Benchmark evaluation of the IBM SP2 for parallel signal processing, IEEE Transactions on Parallel and Distributed Systems 7(5) (May 1996) 522–536.
M.A. Iverson, F. Ozguner and L.C. Potter, Statistical prediction of task execution times through analytic benchmarking for scheduling in a heterogeneous environment, in: Proceedings of Eighth Heterogeneous Computing Workshop (HCW'99) (1999) pp. 99-111.
D. Kim and B.G. Yi, A two-pass scheduling algorithm for parallel programs, Parallel Computing 20 (1994) 869–885.
Y.-K. Kwok and I. Ahmad, Dynamic critical path scheduling: An effective technique for allocating tasks graphs to multiprocessors, IEEE Transactions on Parallel and Distributed Systems 7(5) (May 1996) 506–521.
Y.-K. Kwok and I. Ahmad, Efficient scheduling of arbitrary task graphs to multiprocessors using a parallel genetic algorithm, Journal of Parallel and Distributed Computing 47(1) (November 1997) 58–77.
Y.-K. Kwok and I. Ahmad, FASTEST: A practical low-complexity algorithm for compile-time assignment of parallel programs to multiprocessors, IEEE Transactions on Parallel and Distributed Systems 10(2) (February 1999) 147–159.
Y.-K. Kwok and I. Ahmad, Benchmarking and comparison of the task graph scheduling algorithms, Journal of Parallel and Distributed Computing 59(3) (December 1999) 381–422.
Y.-K. Kwok and I. Ahmad, Static scheduling algorithms for allocating directed task graphs to multiprocessors, ACM Computing Surveys 31(4) (December 1999).
M.G. Norman and P. Thanisch, Models of machines and computation for mapping in multicomputers, ACM Computing Surveys 25(3) (September 1993) 263–302.
M.A. Palis, J.-C. Liou and D.S.L. Wei, Task clustering and scheduling for distributed memory parallel architectures, IEEE Transactions on Parallel and Distributed Systems 7(1) (January 1996) 46–55.
V. Sarkar, Partitioning and Scheduling Parallel Programs for Multiprocessors (MIT Press, Cambridge, MA, 1989).
B. Shirazi, M. Wang and G. Pathak, Analysis and evaluation of heuristic methods for static scheduling, Journal of Parallel and Distributed Computing 10(3) (November 1990) 222–232.
H.J. Siegel, H.G. Dietz and J.K. Antonio, Software support for heterogeneous computing, ACM Computing Surveys 28(1) (March 1996) 237–239.
G.C. Sih and E.A. Lee, A compile-time scheduling heuristic for interconnection-constrained heterogeneous processor architectures, IEEE Transactions on Parallel and Distributed Systems 4(2) (February 1993) 75–87.
M.-Y. Wu and D.D. Gajski, Hypertool: A programming aid for message-passing systems, IEEE Transactions on Parallel and Distributed Systems 1(3) (July 1990) 330–343.
T. Yang and A. Gerasoulis, List scheduling with and without communication delays, Parallel Computing 19 (1993) 1321–1344.
J. Yang, A. Khokhar, S. Sheikh and A. Ghafoor, Estimating execution time for parallel tasks in heterogeneous processing (HP) environment, in: Proceedings of the Fourth Heterogeneous Computing Workshop (HCW'94) (1994) pp. 23-28.
A.Y. Zomaya, M. Clements and S. Olariu, A framework for reinforcement-based scheduling in parallel processor systems, IEEE Transactions on Parallel and Distributed Systems 9(3) (March 1998) 249–260.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Kwok, YK., Ahmad, I. Link contention-constrained scheduling and mapping of tasks and messages to a network of heterogeneous processors. Cluster Computing 3, 113–124 (2000). https://doi.org/10.1023/A:1019076003163
Issue Date:
DOI: https://doi.org/10.1023/A:1019076003163