HPCC 2005: High Performance Computing and Communications pp 203-212 | Cite as
A Productive Duplication-Based Scheduling Algorithm for Heterogeneous Computing Systems
Abstract
The scheduling problem has been shown to be NP-complete in general cases, and as a consequence many heuristic algorithms account for a myriad of previously proposed scheduling algorithms. Most of these algorithms are designed for homogeneous computing systems. This paper presents a novel scheduling algorithm for heterogeneous computing systems. The proposed method is known as the Productive Duplication-based Heterogeneous Earliest-Finish-Time (PDHEFT) algorithm. The PDHEFT algorithm is based on a recently proposed list-scheduling heuristic known as the Heterogeneous Earliest-Finish-Time (HEFT) algorithm which is proven to perform well with a low time complexity. However, the major performance gain of the PDHEFT algorithm is achieved through its distinctive duplication policy. The duplication policy is unique in that it takes into account the communication to computation ratio (CCR) of each task and the potential load of processors. The PDHEFT algorithm performs very competitively in terms of both resulting schedules and time complexity. In evaluating the PDHEFT algorithm a comparison is made with another two algorithms that have performed relatively well, namely, the HEFT and LDBS algorithms. It is shown that the proposed algorithm outperforms both of them with a low time complexity.
Keywords
Schedule Algorithm Finish Time Task Graph Schedule Length List Schedule AlgorithmPreview
Unable to display preview. Download preview PDF.
References
- 1.Garey, M.R., Johnson, D.S.: Computers and Intractability: A Guide to the Theory of NP-Completeness, pp. 238–239. W.H. Freeman and Co, New York (1979)MATHGoogle Scholar
- 2.Topcuoglu, H., Hariri, S., Wu, M.: Performance-Effective and Low-Complexity Task Scheduling for Heterogeneous Computing. IEEE TPDS 13(3), 260–274 (2002)Google Scholar
- 3.Radulescu, A., Gemund, A.J.C.: Fast and effective task scheduling in heterogeneous systems. In: Proc.HCW, pp. 229–238 (2000)Google Scholar
- 4.Radulescu, A., Gemund, A.J.C.: On the complexity of list scheduling algorithms for distributed memory systems. In: Proc. 13th ACM Int’l Con. Supercomputing, pp. 68–75 (1999)Google Scholar
- 5.Radulescu, A., Gemund, A.J.C.: FLB: Fast Load Balancing for distributed-memory machines. In: Proc. ICPP, pp. 534–541 (1999)Google Scholar
- 6.Sih, G.C., Lee, E.A.: A Compile-Time Scheduling Heuristic for Interconnection-Constrained Heterogeneous Processor Architectures. IEEE TPDS 4(2), 175–187 (1993)Google Scholar
- 7.Kruatrachue, A., Lewis, T.G.: Grain Size Determination for Parallel Processing. IEEE Software, 23–32 (1988)Google Scholar
- 8.Hwang, J.J., Chow, Y.C., Anger, F.D., Lee, C.Y.: Scheduling Precedence Graphs in Systems with Interprocessor Communication Times. SIAM J. Computing 18(2), 244–257 (1989)MATHCrossRefMathSciNetGoogle Scholar
- 9.Kwok, Y.K., Ahmad, I.: Benchmarking the Task Graph Scheduling Algorithms. In: Proc. First Merged Int’l Parallel Symp./Symp. Parallel and Distributed Processing Conf., pp. 531–537 (1998)Google Scholar
- 10.Dogan, A., Ozguner, R.: LDBS: A Duplication Based Scheduling Algorithm for Heterogeneous Computing Systems. In: Proc. ICPP, pp. 352–359 (2002)Google Scholar
- 11.Wu, M.-Y., Gajski, D.D.: Hypertool: A Programming Aid for Message-Passing Systems. IEEE TPDS 1(3), 330–343 (1990)Google Scholar
- 12.Lord, R.E., Kowalik, J.S., Kumar, S.P.: Solving Linear Algebraic Equations on an MIMD Computer. J. ACM. 30(1), 103–117 (1983)MATHCrossRefMathSciNetGoogle Scholar
- 13.Cormen, T.H., Leiserson, C.E., Rivest, R.L.: Introduction to Algorithms. MIT Press, Cambridge (1990)MATHGoogle Scholar