
This Article  
 
Share  
Bibliographic References  
Add to:  
Digg Furl Spurl Blink Simpy Del.icio.us Y!MyWeb  
Search  
 
ASCII Text  x  
YuKwong Kwok, Ishfaq Ahmad, "Dynamic CriticalPath Scheduling: An Effective Technique for Allocating Task Graphs to Multiprocessors," IEEE Transactions on Parallel and Distributed Systems, vol. 7, no. 5, pp. 506521, May, 1996.  
BibTex  x  
@article{ 10.1109/71.503776, author = {YuKwong Kwok and Ishfaq Ahmad}, title = {Dynamic CriticalPath Scheduling: An Effective Technique for Allocating Task Graphs to Multiprocessors}, journal ={IEEE Transactions on Parallel and Distributed Systems}, volume = {7}, number = {5}, issn = {10459219}, year = {1996}, pages = {506521}, doi = {http://doi.ieeecomputersociety.org/10.1109/71.503776}, 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  Dynamic CriticalPath Scheduling: An Effective Technique for Allocating Task Graphs to Multiprocessors IS  5 SN  10459219 SP506 EP521 EPD  506521 A1  YuKwong Kwok, A1  Ishfaq Ahmad, PY  1996 KW  Algorithms KW  clustering KW  list scheduling KW  multiprocessors KW  processor allocation KW  parallel scheduling KW  task graphs. VL  7 JA  IEEE Transactions on Parallel and Distributed Systems ER   
Abstract—In this paper, we propose a static scheduling algorithm for allocating task graphs to fully connected multiprocessors. We discuss six recently reported scheduling algorithms and show that they possess one drawback or the other which can lead to poor performance. The proposed algorithm, which is called the Dynamic CriticalPath (DCP) scheduling algorithm, is different from the previously proposed algorithms in a number of ways. First, it determines the critical path of the task graph and selects the next node to be scheduled in a dynamic fashion. Second, it rearranges the schedule on each processor dynamically in the sense that the positions of the nodes in the partial schedules are not fixed until all nodes have been considered. Third, it selects a suitable processor for a node by looking ahead the potential start times of the remaining nodes on that processor, and schedules relatively less important nodes to the processors already in use. A global as well as a pairwise comparison is carried out for all seven algorithms under various scheduling conditions. The DCP algorithm outperforms the previous algorithms by a considerable margin. Despite having a number of new features, the DCP algorithm has admissible time complexity, is economical in terms of the number of processors used and is suitable for a wide range of graph structures.
[1] T.L. Adam, K.M. Chandy, and J.R. Dickson, “A Comparison of List Schedules for Parallel Processing Systems,” Comm. ACM, vol. 17, no. 12, pp. 685690, Dec. 1974.
[2] V.A.F. Almeida, I.M. Vasconcelos, J.N.C. Arabe, and D.A. Menasce, "Using Random Task Graphs to Investigate the Potential Benefits of Heterogeneity in Parallel Systems," Proc. Supercomputing '92, pp. 683691, Nov. 1992.
[3] M.A. AlMouhamed, Lower Bound on the Number of Processors and Time for Scheduling Precedence Graphs with Communication Costs IEEE Trans. Software Eng., vol. 16, no. 12, pp. 13901401, Dec. 1990.
[4] F.D. Anger, J.J. Hwang, and Y.C. Chow, “Scheduling with Sufficient Loosely Coupled Processors,” J. Parallel and Distributed Computing, vol. 9, pp. 8792, 1990.
[5] A.F. Bashir, V. Susarla, and K. Vairavan, "A Statistical Study of the Performance of a Task Scheduling Algorithm," IEEE Trans. Computers, vol. 32, no. 12, pp. 774777, Dec. 1975.
[6] S. Bokhari, "A Shortest Tree Algorithm for Optimal Assignments Across Space and Time in Distributed Processor Systems," IEEE Trans. Software Engineering, vol. 7, no. 6, Nov. 1981.
[7] J. Bruno, E.G. Coffman, and R. Sethi, "Scheduling Independent Tasks to Reduce Mean Finishing Time," Comm. ACM, vol. 17, no. 7, pp. 382387, July 1974.
[8] V. Chaudhary and J.K. Aggarwal, "A Generalized Scheme for Mapping Parallel Algorithms," IEEE Trans. Parallel and Distributed Systems, Mar. 1993, pp. 328346.
[9] E.G. Coffman, Computer and JobShop Scheduling Theory.New York: Wiley, 1976.
[10] M. Cosnard, M. Marrakchi, Y. Robert, and D. Trystram, "Parallel Gaussian Elimination on an MIMD Computer," Parallel Computing, vol. 6, pp. 275296, 1988.
[11] E.B. Fernadez and B. Bussell, "Bounds on the Number of Processors and Time for Multiprocessor Optimal Schedules," IEEE Trans. Computers, vol. 22, no. 8, pp. 745751, Aug. 1973.
[12] M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NPCompleteness.New York: W.H. Freeman, 1979.
[13] A. Gerasoulis and T. Yang, "A Comparison of Clustering Heuristics for Scheduling DAG's on Multiprocessors," J. Parallel and Distributed Computing, vol. 16, no. 4, pp. 276291, Dec. 1992.
[14] M.J. Gonzalez, "Deterministic Processor Scheduling," Computing Surveys, vol. 9, no. 3, Sept. 1977.
[15] R.L. Graham, E.L. Lawler, J.K. Lenstra, and A.H.G. Rinnoy Kan, "Optimization and Approximation in Deterministic Sequencing and Scheduling: A Survey," Annals of Discrete Mathematics, no. 5, pp. 287326, 1979.
[16] 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.
[17] D.S. Hochbaum and D.B. Shmoys, "Using Dual Approximation Algorithms for Scheduling Problems: Theoretical and Practical Results," J. ACM, vol. 34, no. 1, pp. 144162, Jan. 1987.
[18] T.C. Hu, "Parallel Sequencing and Assembly Line Problems," Oper. Research, vol. 19, no. 6, pp. 841848, Nov. 1961.
[19] H. Kasahara and S. Narita, "Practical Multiprocessor Scheduling Algorithms for Efficient Parallel Processing," IEEE Trans. on Computers, vol. 33, no. 11, pp. 1,0231,029, Nov. 1984.
[20] S.J. Kim and J.C. Browne, "A General Approach to Mapping of Parallel Computation upon Multiprocesor Architectures," Proc. Int'l Conf. Parallel Processing, pp. 18, 1988.
[21] W.H. Kohler and K. Steiglitz, "Characterization and Theoretical Comparison of BranchandBound Algorithms for Permutation Problems," J. ACM, vol. 21, no. 1, pp. 140156, Jan. 1974.
[22] W.H. Kohler, "A Preliminary Evaluation of the Critical Path Method for Scheduling Tasks on MultiProcessor Systems," IEEE Trans. Computers, vol. 24, no. 12, pp. 1,2351,238, Dec. 1975.
[23] B. Lee, A.R. Hurson, and T.Y. Feng, "A Vertically Layered Allocation Scheme for Dataflow Systems," J. Parallel and Distributed Computing, Vol. 11, No. 3, Mar. 1991, pp. 175187.
[24] S.Y. Lee and J.K. Aggarwal, “A Mapping Strategy for Parallel Processing,” IEEE Trans. Computers vol. 36, no. 4, pp. 433–442, Apr. 1987.
[25] T.G. Lewis and H. ElRewini, Introduction to Parallel Computing.New York: Prentice Hall, 1992.
[26] R.E. Lord, J.S. Kowalik, and S.P. Kumar, "Solving Linear Algebraic Equations on an MIMD Computer," J. ACM, vol. 30, no. 3, pp. 103117, Jan. 1983.
[27] C. McCreary and H. Gill,"Automatic determination of grain size for efficient parallel processing," Comm. ACM, pp. 1,0731,078, Sept. 1989.
[28] J.M. Ortega, Introduction to Parallel and Vector Solution of Linear Systems, Plenum Press, New York, 1988.
[29] C.H. Papadimitriou and M. Yannakakis,"Towards an architectureindependent analysis of parallel algorithms," SIAM J. Computing, vol. 19, no. 2, pp. 322328, Apr. 1990.
[30] C.V. Ramamoorthy, K.M. Chandy, and M.J. Gonzalez, "Optimal Scheduling Strategies in a Multiprocessor System," IEEE Trans. Computers, vol. 21, no. 2, pp. 137146, Feb. 1972.
[31] 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.
[32] V. Sarkar,Partitioning and Scheduling Parallel Programs for Execution on Multiprocessors.Cambridge, Mass.: MIT Press, 1989.
[33] R. Sethi, "Scheduling Graphs on Two Processors," SIAM J. Computing, vol. 5, no.1, pp. 7382, Mar. 1976.
[34] B. Shirazi, M. Wang, and G. Pathak, “Analysis and Evaluation of Heuristic Methods for Static Task Scheduling,” J. Parallel and Distributed Computing, vol. 10, no. 3, pp. 222232, Nov. 1990.
[35] 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.
[36] 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.
[37] 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.