Skip to main content

A resource-aware scheduling algorithm with reduced task duplication on heterogeneous computing systems

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.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

References

  1. Freund RF, Siegel HJ (1993) Heterogeneous processing. IEEE Comput 26(6):13–17

    Google Scholar 

  2. Maheswaran M, Braun TD, Siegel HJ (1999) Heterogeneous distributed computing. Encycl Electr Electron Eng 8:679–690

    Google Scholar 

  3. 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

  4. Wu MY, Gajski DD (1990) Hypertool: a programming aid for message-passing systems. IEEE Trans Parallel Distrib Syst 1(3):330–343

    Article  Google Scholar 

  5. 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

  6. Sinnen O (2007) Task scheduling for parallel systems, vol 60. Wiley-Interscience, Hoboken, NY

    Book  Google Scholar 

  7. Garey MR, Johnson DS (1990) Computers and intractability: a guide to the theory of NP-completeness. W. H. Freeman & Co., New York, NY

    Google Scholar 

  8. Ullman JD (1975) Np-complete scheduling problems. J Comput Syst Sci 10:384–393

    Article  MATH  MathSciNet  Google Scholar 

  9. 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

  10. 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

  11. 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

    Article  MATH  Google Scholar 

  12. 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

    Article  MATH  Google Scholar 

  13. 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

    Article  Google Scholar 

  14. 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

  15. 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

    Article  Google Scholar 

  16. Lai K-C, Yang C-T (2008) A dominant predecessor duplication scheduling algorithm for heterogeneous systems. J Supercomput 44:126–145

    Article  Google Scholar 

  17. 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

    Article  Google Scholar 

  18. 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

    Article  Google Scholar 

  19. 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

  20. Liou JC, Palis (1996) An efficient task clustering heuristic for scheduling dags on multiprocessors. In: Proceedings of parallel and distributed processing symposium

  21. 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

  22. Tang X, Li K, Liao G, Li R (2010) List scheduling with duplication for heterogeneous computing systems. JParallel Distrib Comput 70(4):323–329

    Article  MATH  Google Scholar 

  23. 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

    Article  MathSciNet  Google Scholar 

  24. 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

    Article  MATH  Google Scholar 

  25. 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

    Article  Google Scholar 

  26. 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

  27. Khokhar AA, Prasanna VK, Shaaban ME, Wang C-L (1993) Heterogeneous computing: challenges and opportunities. Computer 26(6):18–27

    Article  Google Scholar 

  28. Cormen TH, Leiserson CE, Rivest RL (2001) Introduction to algorithms. MIT, Cambridge

    MATH  Google Scholar 

  29. Cosnard M, Marrakchi M, Robert Y, Trystram D (1988) Parallel gaussian elimination on an mimd computer. Parallel Comput 6(3):275–296

    Article  MATH  MathSciNet  Google Scholar 

  30. 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

Download references

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

Authors

Corresponding author

Correspondence to Kenli Li.

Rights and permissions

Reprints 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

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-014-1090-4

Keywords

  • Directed acyclic graph
  • Duplication-based task scheduling
  • Heterogeneous computing system
  • Resource awareness