
This Article  
 
Share  
Bibliographic References  
Add to:  
Digg Furl Spurl Blink Simpy Del.icio.us Y!MyWeb  
Search  
 
ASCII Text  x  
H. Topcuoglu, S. Hariri, M.Y. Wu, "PerformanceEffective and LowComplexity Task Scheduling for Heterogeneous Computing," IEEE Transactions on Parallel and Distributed Systems, vol. 13, no. 3, pp. 260274, March, 2002.  
BibTex  x  
@article{ 10.1109/71.993206, author = {H. Topcuoglu and S. Hariri and M.Y. Wu}, title = {PerformanceEffective and LowComplexity Task Scheduling for Heterogeneous Computing}, journal ={IEEE Transactions on Parallel and Distributed Systems}, volume = {13}, number = {3}, issn = {10459219}, year = {2002}, pages = {260274}, doi = {http://doi.ieeecomputersociety.org/10.1109/71.993206}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, }  
RefWorks Procite/RefMan/Endnote  x  
TY  JOUR JO  IEEE Transactions on Parallel and Distributed Systems TI  PerformanceEffective and LowComplexity Task Scheduling for Heterogeneous Computing IS  3 SN  10459219 SP260 EP274 EPD  260274 A1  H. Topcuoglu, A1  S. Hariri, A1  M.Y. Wu, PY  2002 KW  DAG scheduling KW  task graphs KW  heterogeneous systems KW  list scheduling KW  mapping VL  13 JA  IEEE Transactions on Parallel and Distributed Systems ER   
Efficient application scheduling is critical for achieving high performance in heterogeneous computing environments. The application scheduling problem has been shown to be NPcomplete in general cases as well as in several restricted cases. Because of its key importance, this problem has been extensively studied and various algorithms have been proposed in the literature which are mainly for systems with homogeneous processors. Although there are a few algorithms in the literature for heterogeneous processors, they usually require significantly high scheduling costs and they may not deliver good quality schedules with lower costs. In this paper, we present two novel scheduling algorithms for a bounded number of heterogeneous processors with an objective to simultaneously meet high performance and fast scheduling time, which are called the Heterogeneous EarliestFinishTime (HEFT) algorithm and the CriticalPathonaProcessor (CPOP) algorithm. The HEFT algorithm selects the task with the highest upward rank value at each step and assigns the selected task to the processor, which minimizes its earliest finish time with an insertionbased approach. On the other hand, the CPOP algorithm uses the summation of upward and downward rank values for prioritizing tasks. Another difference is in the processor selection phase, which schedules the critical tasks onto the processor that minimizes the total execution time of the critical tasks. In order to provide a robust and unbiased comparison with the related work, a parametric graph generator was designed to generate weighted directed acyclic graphs with various characteristics. The comparison study, based on both randomly generated graphs and the graphs of some real applications, shows that our scheduling algorithms significantly surpass previous approaches in terms of both quality and cost of schedules, which are mainly presented with schedule length ratio, speedup, frequency of best results, and average scheduling time metrics.
[1] M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NPCompleteness.New York: W.H. Freeman, 1979.
[2] J.D. Ullman, “NPComplete Scheduling Problems,” J. Computer and Systems Sciences, vol. 10, pp. 384393, 1975.
[3] M.Y. Wu and D.D. Gajski,"Hypertool: A programming aid for messagepassing systems," IEEE Transactions on Parallel and Distributed Systems, vol. 1, no. 3, pp. 330343, July 1990.
[4] Y.K. Kwok and I. Ahmad, “Dynamic CriticalPath Scheduling: An Effective Technique for Allocating Task Graphs to Multiprocessors,” IEEE Trans. Parallel and Distributed Systems, vol. 7, no. 5, pp. 506521, May 1996.
[5] E.S. Hou, N. Ansari, and H. Ren, A Genetic Algorithm for Multiprocessor Scheduling IEEE Trans. Parallel and Distributed Systems, vol. 5, no. 2, pp. 113120, 1994.
[6] G.C. Sih and E.A. Lee, “A CompileTime Scheduling Heuristic for InterconnectionConstrained Heterogeneous Processor Architectures,” IEEE Trans. Parallel and Distributed Systems, vol. 4, no. 2, pp. 175186, Feb. 1993.
[7] H.E. Rewini and T.G. Lewis,"Scheduling parallel program tasks onto arbitrary target machines," J. Parallel and Distributed Computing, vol. 9, pp. 138153, 1990.
[8] H. Singh and A. Youssef, “Mapping and Scheduling Heterogeneous Task Graphs Using Genetic Algorithms,” Proc. Heterogeneous Computing Workshop, pp. 8697, 1996.
[9] I. Ahmad and Y. Kwok, “A New Approach to Scheduling Parallel Programs Using Task Duplication,” Proc. Int'l Conf. Parallel Processing, vol. 2, pp. 4751, 1994.
[10] M. Iverson, F. Ozguner, and G. Follen, “Parallelizing Existing Applications in a Distributed Heterogeneous Environment,” Proc. Heterogeneous Computing Workshop, pp. 93100, 1995.
[11] P. Shroff, D.W. Watson, N.S. Flann, and R. Freund, “Genetic Simulated Annealing for Scheduling DataDependent Tasks in Heterogeneous Environments,” Proc. Heterogeneous Computing Workshop, pp. 98104, 1996.
[12] T. Yang and A. Gerasoulis, “DSC: Scheduling Parallel Tasks on an Unbounded Number of Processors,” IEEE Trans. Parallel and Distributed Systems, vol. 5, pp. 951967, 1994.
[13] L. Wang, H.J. Siegel, and V.P. Roychowdhury, “A GeneticAlgorithmBased Approach for Task Matching and Scheduling in Heterogeneous Computing Environments,” Proc. Heterogeneous Computing Workshop, 1996.
[14] M. Maheswaran and H.J. Siegel, “A Dynamic Matching and Scheduling Algorithm for Heterogeneous Computing Systems,” Proc. Heterogeneous Computing Workshop, pp. 5769, 1998.
[15] L. Tao, B. Narahari, and Y.C. Zhao, “Heuristics for Mapping Parallel Computations to Heterogeneous Parallel Architectures,” Proc. Heterogeneous Computing Workshop, 1993.
[16] M. Wu, W. Shu, and J. Gu, “Local Search for DAG Scheduling and Task Assignment,” Proc. 1997 Int'l Conf. Parallel Processing, pp. 174180, 1997.
[17] R.C. Correa, A. Ferreria, and P. Rebreyend, “Integrating List Heuristics into Genetic Algorithms for Multiprocessor Scheduling,” Proc. Eighth IEEE Symp. Parallel and Distributed Processing (SPDP '96), Oct. 1996.
[18] B. Kruatrachue and T. Lewis,"Grain size determination for parallel processing," IEEE Software, pp. 2332, Jan. 1988.
[19] S.J. Kim and J.C. Browne, “A General Approach to Mapping of Parallel Computation upon Multiprocessor Architectures,” Proc. Int'l Conf. Parallel Processing, vol. 2, pp. 18, 1988.
[20] Y.K. Kwok, I. Ahmad, and J. Gu, “FAST: A LowComplexity Algorithm for Efficient Scheduling of DAGs on Parallel Processors,” Proc. Int'l Conf. Parallel Processing (ICPP), vol. II, pp. 150157, Aug. 1996.
[21] Y. Kwok and I. Ahmad, “Benchmarking the Task Graph Scheduling Algorithms,” Proc. First Merged Int'l Parallel Pocessing Symp./Symp. Parallel and Distributed Processing Conf., pp. 531537, 1998.
[22] J.J. Hwang,Y.C. Chow,F.D. Anger, and C.Y. Lee,"Scheduling precedence graphs in systems with interprocessor communication times," SIAM J. Computing, vol. 18, no. 2, pp. 244257, Apr. 1989.
[23] H. ElRewini, H.H. Ali, and T.G. Lewis, “Task Scheduling in Multiprocessing Systems,” Computer, pp. 2737, Dec. 1995.
[24] J. Liou and M.A. Palis, “A Comparison of General Approaches to Multiprocessor Scheduling,” Proc. Int'l Parallel Processing Symp., pp. 152156, 1997.
[25] J. Liou and M.A. Palis, “An Efficient Clustering Heuristic for Scheduling DAGs on Multiprocessors,” Proc. Symp. Parallel and Distributed Processing, 1996.
[26] A. Radulescu and A.J.C. van Gemund, “LLB: A Fast and Effective Scheduling Algorithm for DistributedMemory Systems,” Proc. Int'l Parallel Processing Symp./Symp. Parallel and Distributed Processing (IPPS/SPDP), pp. 525530, Apr. 1999.
[27] G.L. Park, B. Shirazi, and J. Marquis, “DFRN: A New Approach for Duplication Based Scheduling for Distributed Memory Multiprocessor System,” Proc. Int'l Parallel Processing Symp. (IPPS), pp. 157166, Apr. 1997.
[28] M. Cosnard, M. Marrakchi, Y. Robert, and D. Trystram, “Parallel Gaussian Elimination on an MIMD Computer,” Parallel Computing, vol. 6, pp. 275295, 1988.
[29] T.H. Cormen,C.E. Leiserson, and R.L. Rivest,Introduction to Algorithms.Cambridge, Mass.: MIT Press/McGrawHill, 1990.
[30] Y.C. Chung and S. Ranka,"Applications and performance analysis of a compiletime optimization approach for list scheduling algorithms on distributed memory multiprocessors," Proc. Supercomputing '92, pp. 512521, 1992.
[31] T.D. Braun, H.J. Siegel, N. Beck, L.L. Bölöni, M. Maheswaran, A.I. Reuther, J.P. Robertson, M.D. Theys, B. Yao, D. Hensgen, and R.F. Freund, “A Comparison Study of Static Mapping Heuristics for a Class of MetaTasks on Heterogeneous Computing Systems,” Proc. Eighth IEEE Workshop on Heterogeneous Computing Systems (HCW '99), pp. 1529, Apr. 1999.