Abstract
The task scheduling problem on heterogeneous computing systems has been broadly studied, and many heuristic algorithms are proposed to solve this problem. It is interesting to go for significant performance assessment and comparison among these heuristic algorithms. In this work, we first carry out performance evaluation and comparison of task scheduling algorithms for heterogeneous computing systems for randomly generated graphs and the graphs generated from real-world applications such as Fast Fourier Transform, Gaussian Elimination, Montage and Epigenomics workflow. Further, we explores possibility of a framework for benchmarking of task scheduling algorithms for heterogeneous computing systems. This proposed approach provides for generation of graphs through a Directed Acyclic Graph generator, then produces schedules through a scheduler which makes use of scheduling algorithms and finally analyses the results obtained by using various performance metrics. The proposed framework is general in nature.
Similar content being viewed by others
References
Arabnejad H, Barbosa JG (2014) List scheduling algorithm for heterogeneous systems by an optimistic cost table. IEEE Trans Parallel Distrib Syst 25(3):682–694
Bajaj R, Agrawal DP (2004) Improving scheduling of tasks in a heterogeneous environment. IEEE Trans Parallel Distrib Syst 15(2):107–118
Bansal S, Kumar P, Singh K (2003) An improved duplication strategy for scheduling precedence constrained graphs in multiprocessor systems. IEEE Trans Parallel Distrib Syst 14(6):533–544
Berriman G, Good J, Laity A, Bergou A, Jacob J, Katz D, Deelman E, Kesselman C, Singh G, Su MH et al (2004) Montage: A grid enabled image mosaic service for the national virtual observatory. In: Astronomical Data Analysis Software and Systems (ADASS) XIII, vol 314, p 593
Bittencourt LF, Sakellariou R, Madeira ER (2010) Dag scheduling using a lookahead variant of the heterogeneous earliest finish time algorithm. In: 2010 18th Euromicro International Conference on Parallel, Distributed and Network-Based Processing (PDP). IEEE, pp 27–34
Bölöni L, Marinescu DC (2002) Robust scheduling of metaprograms. J Sched 5(5):395–412
Bozdag D, Catalyurek U, Ozguner F (2006) A task duplication based bottom-up scheduling algorithm for heterogeneous environments. In: 20th International Parallel and Distributed Processing Symposium, 2006. IPDPS 2006. IEEE, p 12
Braun TD, Siegel HJ, Beck N, Bölöni LL, Maheswaran M, Reuther AI, Robertson JP, Theys MD, Yao B, Hensgen D et al (2001) A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing systems. J Parallel Distrib Comput 61(6):810–837
Brown DA, Brady PR, Dietz A, Cao J, Johnson B, McNabb J (2007) A case study on the use of workflow technologies for scientific analysis: gravitational wave data analysis. In: Taylor IJ, Deelman E, Gannon DB, Shields M (eds) Workflows for e-science. Springer, London, pp 39–59
Chung YC, Ranka S (1992) Applications and performance analysis of a compile-time optimization approach for list scheduling algorithms on distributed memory multiprocessors. In: Proceedings of the 1992 ACM/IEEE Conference on Supercomputing. IEEE Computer Society Press, pp 512–521
Coffman EG, Graham RL (1972) Optimal scheduling for two-processor systems. Acta Inform 1(3):200–213
Cosnard M, Marrakchi M, Robert Y, Trystram D (1988) Parallel Gaussian elimination on an MIMD computer. Parallel Comput 6(3):275–296
Dai Y, Zhang X (2014) A synthesized heuristic task scheduling algorithm. Sci World J. https://doi.org/10.1155/2014/465702
Daoud MI, Kharma N (2008) A high performance algorithm for static task scheduling in heterogeneous distributed computing systems. J Parallel Distrib Comput 68(4):399–409
Deelman E, Singh G, Su MH, Blythe J, Gil Y, Kesselman C, Mehta G, Vahi K, Berriman GB, Good J et al (2005) Pegasus: a framework for mapping complex scientific workflows onto distributed systems. Sci Program 13(3):219–237
Garey MR, Johnson DS (2002) Computers and intractability, vol 29. W.H. Freeman, New York
Hu M, Luo J, Wang Y, Veeravalli B (2017) Adaptive scheduling of task graphs with dynamic resilience. IEEE Trans Comput 66(1):17–23
Ilavarasan E, Thambidurai P (2007) Low complexity performance effective task scheduling algorithm for heterogeneous computing environments. J Comput Sci 3(2):94–103
Juve G, Chervenak A, Deelman E, Bharathi S, Mehta G, Vahi K (2013) Characterizing and profiling scientific workflows. Future Gen Comput Syst 29(3):682–692
Kanemitsu H, Hanada M, Nakazato H (2016) Clustering-based task scheduling in a large number of heterogeneous processors. IEEE Trans Parallel Distrib Syst 27(11):3144–3157
Khaldi D, Jouvelot P, Ancourt C (2015) Parallelizing with BDSC, a resource-constrained scheduling algorithm for shared and distributed memory systems. Parallel Comput 41:66–89
Khan MA (2012) Scheduling for heterogeneous systems using constrained critical paths. Parallel Comput 38(4):175–193
Kianzad V, Bhattacharyya SS (2006) Efficient techniques for clustering and scheduling onto embedded multiprocessors. IEEE Trans Parallel Distrib Syst 17(7):667–680
Kwok YK, Ahmad I (1999) Benchmarking and comparison of the task graph scheduling algorithms. J Parallel Distrib Comput 59(3):381–422
Kwok YK, Ahmad I (1999) Static scheduling algorithms for allocating directed task graphs to multiprocessors. ACM Comput Surv 31(4):406–471
Mei J, Li K, Li K (2014) A resource-aware scheduling algorithm with reduced task duplication on heterogeneous computing systems. J Supercomput 68(3):1347–1377
Mishra A, Mishra PK (2016) A randomized scheduling algorithm for multiprocessor environments using local search. Parallel Process Lett 26(01):1650002
Mishra A, Tripathi AK (2010) An extension of edge zeroing heuristic for scheduling precedence constrained task graphs on parallel systems using cluster dependent priority scheme. In: 2010 International Conference on Computer and Communication Technology (ICCCT). IEEE, pp 647–651
Mishra PK, Mishra A, Mishra KS, Tripathi AK (2012) Benchmarking the clustering algorithms for multiprocessor environments using dynamic priority of modules. Appl Math Model 36(12):6243–6263
Sarkar V (1987) Partitioning and scheduling parallel programs for execution on multiprocessors. Technical report, Stanford University, Stanford, CA, USA
Shi Z, Jeannot E, Dongarra JJ (2006) Robust task scheduling in non-deterministic heterogeneous computing systems. In: 2006 IEEE International Conference on Cluster Computing. IEEE, pp 1–10
Shin K, Cha M, Jang M, Jung J, Yoon W, Choi S (2008) Task scheduling algorithm using minimized duplications in homogeneous systems. J Parallel Distrib Comput 68(8):1146–1156
Sih GC, Lee EA (1993) A compile-time scheduling heuristic for interconnection-constrained heterogeneous processor architectures. IEEE Trans Parallel Distrib Syst 4(2):175–187
Tang X, Li K, Liao G, Li R (2010) List scheduling with duplication for heterogeneous computing systems. J Parallel Distrib Comput 70(4):323–329
Tobita T, Kasahara H (2002) A standard task graph set for fair evaluation of multiprocessor scheduling algorithms. J Sched 5(5):379–394
Topcuoglu H, Hariri S, Wu M-Y (2002) Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Trans Parallel Distrib Syst 13(3):260–274
Tsai YL, Liu HC, Huang KC (2015) Adaptive dual-criteria task group allocation for clustering-based multi-workflow scheduling on parallel computing platform. J Supercomput 71(10):3811–3831
Ullman JD (1975) Np-complete scheduling problems. J Comput Syst Sci 10(3):384–393
Wang J, Lv X, Chen X (2016) Comparative analysis of list scheduling algorithms on homogeneous multi-processors. In: 2016 8th IEEE International Conference on Communication Software and Networks (ICCSN). IEEE, pp 708–713
Wu MY, Gajski DD (1990) Hypertool: a programming aid for message-passing systems. IEEE Trans Parallel Distrib Syst 1(3):330–343
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Maurya, A.K., Tripathi, A.K. On benchmarking task scheduling algorithms for heterogeneous computing systems. J Supercomput 74, 3039–3070 (2018). https://doi.org/10.1007/s11227-018-2355-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-018-2355-0