Abstract
To satisfy the high-performance requirements of application executions, many kinds of task scheduling algorithms have been proposed. Among them, duplication-based scheduling algorithms achieve higher performance compared to others. However, because of their greedy feature, they duplicate parents of each task as long as the finish time can be reduced, which leads to a superfluous consumption of resource. However, a large amount of duplications are unnecessary because slight delay of some uncritical tasks does not affect the overall makespan. Moreover, these redundant duplications would occupy the resources, delay the execution of subsequent tasks, and increase the schedule makespan consequently. In this paper, we propose a novel duplication-based algorithm designed to overcome the above drawbacks. The proposed algorithm is to schedule tasks with the least redundant duplications. An optimizing scheme is introduced to search and remove redundancy for a schedule generated by the proposed algorithm further. Randomly generated directed acyclic graphs and two real-world applications are tested in our experiments. Experimental results show that the proposed algorithm can save up to 15.59 % resource consumption compared with the other algorithms. The makespan has improvement as well.
Similar content being viewed by others
References
Freund RF, Siegel HJ (1993) Heterogeneous processing. IEEE Comput 26(6):13–17
Maheswaran M, Braun TD, Siegel HJ (1999) Heterogeneous distributed computing. Encycl Electr Electron Eng 8:679–690
Cosnard M, Loi M (1995) Automatic task graph generation techniques. In: System Sciences, 1995. Proceedings of the 28th Hawaii international conference on, vol 2. IEEE, pp 113–122
Wu MY, Gajski DD (1990) Hypertool: a programming aid for message-passing systems. IEEE Trans Parallel Distrib Syst 1(3):330–343
Iverson MA, Ozguner F, Potter LC (1999) Statistical prediction of task execution times through analytic benchmarking for scheduling in a heterogeneous environment. In: Heterogeneous computing workshop, 1999 (HCW’99). 8th proceedings. IEEE, pp 99–111
Sinnen O (2007) Task scheduling for parallel systems, vol 60. Wiley-Interscience, Hoboken, NY
Garey MR, Johnson DS (1990) Computers and intractability: a guide to the theory of NP-completeness. W. H. Freeman & Co., New York, NY
Ullman JD (1975) Np-complete scheduling problems. J Comput Syst Sci 10:384–393
Radulescu A, van Gemund AJC (2000) Fast and effective task scheduling in heterogeneous systems. In: Proceedings of the 9th heterogeneous computing workshop, 2000. (HCW 2000), pp 229–238
Lotfifar F, Shahhoseini HS (May 2009) A low-complexity task scheduling algorithm for heterogeneous computing systems. In: Third Asia international conference on modelling simulation, 2009. (AMS ’09), pp 596–601
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
Bansal S, Kumar P, Singh K (2005) Dealing with heterogeneity through limited duplication for scheduling precedence constrained task graphs. JParallel Distrib Comput 65(4):479–491
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
Ranaweera S, Agrawal DP (2000) A scalable task duplication based scheduling algorithm for heterogeneous systems. In: Proceedings of the 2000 international conference on parallel processing, pp 383–390
Hagras T, Jane brevecek J (2005) A high performance, low complexity algorithm for compile-time task scheduling in heterogeneous systems. Parallel Comput 31(7):653–670
Lai K-C, Yang C-T (2008) A dominant predecessor duplication scheduling algorithm for heterogeneous systems. J Supercomput 44:126–145
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
Kwok Y-K, Ahmad I (1996) Dynamic critical-path scheduling: an effective technique for allocating task graphs to multiprocessors. IEEE Trans Parallel Distrib Syst 7(5):506–521
Boeres C, Filho JV, Rebello VEF (Oct 2004) A cluster-based strategy for scheduling task on heterogeneous processors. In: 16th symposium on computer architecture and high performance computing, 2004. (SBAC-PAD 2004), pp 214–221
Liou JC, Palis (1996) An efficient task clustering heuristic for scheduling dags on multiprocessors. In: Proceedings of parallel and distributed processing symposium
Fangfa F, Yuxin B, Xinaan H, Jinxiang W, Minyan Y, Jia Z (2010) An objective-flexible clustering algorithm for task mapping and scheduling on cluster-based noc. In: 2010 10th Russian–Chinese symposium on laser physics and laser technologies (RCSLPLT) and 2010 academic symposium on optoelectronics technology (ASOT), pp 369–373, 28 2010-Aug 1
Tang X, Li K, Liao G, Li R (2010) List scheduling with duplication for heterogeneous computing systems. JParallel Distrib Comput 70(4):323–329
Zong Z, Manzanares A, Ruan X, Qin X (2011) Ead and pebd: two energy-aware duplication scheduling algorithms for parallel tasks on homogeneous clusters. IEEE Trans Comput 60(3):360–374
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
Bozdag D, Ozguner F, Catalyurek UV (2009) Compaction of schedules and a two-stage approach for duplication-based dag scheduling. IEEE Trans Parallel Distrib Syst 20(6):857–871
Mei J, Li K (2012) Energy-aware scheduling algorithm with duplication on heterogeneous computing systems. In: 2012 ACM/IEEE 13th international conference on grid computing (GRID), IEEE, pp 122–129
Khokhar AA, Prasanna VK, Shaaban ME, Wang C-L (1993) Heterogeneous computing: challenges and opportunities. Computer 26(6):18–27
Cormen TH, Leiserson CE, Rivest RL (2001) Introduction to algorithms. MIT, Cambridge
Cosnard M, Marrakchi M, Robert Y, Trystram D (1988) Parallel gaussian elimination on an mimd computer. Parallel Comput 6(3):275–296
Kim SJ, Browne JC (1988) A general approach to mapping of parallel computation upon multiprocessor architectures. In: Proceedings of the international conference on parallel processing, pp 1–8
Acknowledgments
The authors would like to thank the five anonymous reviewers for their constructive comments to improve the presentation of the paper. This research was partially funded by the Key Program of National Natural Science Foundation of China (Grant No. 61133005)and the National Natural Science Foundation of China (Grant Nos. 61070057,61103047,61370095),the Ph.D. Programs Foundation of Ministry of Education of China(20100161110019), the National Science Foundation for Distinguished Young Scholars of Hunan (12JJ1011), the Innovation Fund Designated for Graduate Students of Hunan Province (No. CX2013B142), and the Project of National Natural Science Foundation of China under grant 61202109.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Mei, J., Li, K. & Li, K. A resource-aware scheduling algorithm with reduced task duplication on heterogeneous computing systems. J Supercomput 68, 1347–1377 (2014). https://doi.org/10.1007/s11227-014-1090-4
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-014-1090-4