Skip to main content

Advertisement

Log in

Energy-aware task scheduling in heterogeneous computing environments

  • Published:
Cluster Computing Aims and scope Submit manuscript

Abstract

Efficient application scheduling is critical for achieving high performance in heterogeneous computing (HC) environments. Because of such importance, there are many researches on this problem and various algorithms have been proposed. Duplication-based algorithms are one kind of well known algorithms to solve scheduling problems, which achieve high performance on minimizing the overall completion time (makespan) of applications. However, they pursuit of the shortest makespan overly by duplicating some tasks redundantly, which leads to a large amount of energy consumption and resource waste. With the growing advocacy for green computing systems, energy conservation has been an important issue and gained a particular interest. An existing technique to reduce energy consumption of an application is dynamic voltage/frequency scaling (DVFS), whose efficiency is affected by the overhead of time and energy caused by voltage scaling. In this paper, we propose a new energy-aware scheduling algorithm with reduced task duplication called Energy-Aware Scheduling by Minimizing Duplication (EAMD), which takes the energy consumption as well as the makespan of an application into consideration. It adopts a subtle energy-aware method to search and delete redundant task copies in the schedules generated by duplication-based algorithms, and it is easier to operate than DVFS, and produces no extra time and energy consumption. This algorithm not only consumes less energy but also maintains good performance in terms of makespan compared with duplication-based algorithms. Two kinds of DAGs, i.e., randomly generated graphs and two real-world application graphs, are tested in our experiments. Experimental results show that EAMD can save up to 15.59 % energy consumption for HLD and HCPFD, two classic duplication-based algorithms. Several factors affecting the performance are also analyzed in the paper.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Algorithm 1
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

References

  1. Freund, R.F., Siegel, H.J.: Heterogeneous processing. Computer 26(6), 13–17 (1993)

    Google Scholar 

  2. Maheswaran, M., Braun, T.D., Siegel, H.J.: Heterogeneous distributed computing. In: Encyclopedia of Electrical and Electronics Engineering, vol. 8, pp. 679–690. Wiley, New York (1999)

    Google Scholar 

  3. Zhang, Y., Hu, X., Chen, D.Z.: Task scheduling and voltage selection for energy minimization. In: Proceedings of 39th Design Automation Conference, pp. 183–188 (2002)

    Google Scholar 

  4. Zhu, D., Melhem, R., Childers, B.R.: Scheduling with dynamic voltage/speed adjustment using slack reclamation in multiprocessor real-time systems. IEEE Trans. Parallel Distrib. Syst. 14(7), 686–700 (2003)

    Article  Google Scholar 

  5. Pruhs, K., van Stee, R., Uthaisombut, P.: Speed scaling of tasks with precedence constraints. Theory Comput. Syst. 43, 67–80 (2008)

    Article  MATH  MathSciNet  Google Scholar 

  6. Bunde, D.P.: Power-aware scheduling for makespan and flow. J. Sched. 12(5), 489–500 (2009)

    Article  MATH  MathSciNet  Google Scholar 

  7. Baskiyar, S., Abdel-Kader, R.: Energy aware dag scheduling on heterogeneous systems. Clust. Comput. 13, 373–383 (2010)

    Article  Google Scholar 

  8. Lee, Y.C., Zomaya, A.Y.: Energy conscious scheduling for distributed computing systems under different operating conditions. IEEE Trans. Parallel Distrib. Syst. 22(8), 1374–1381 (2011)

    Article  Google Scholar 

  9. Diaz, C.O., Guzek, M., Pecero, J.E., Danoy, G., Bouvry, P., Khan, S.U.: Energy-aware fast scheduling heuristics in heterogeneous computing systems. In: 2011 International Conference on High Performance Computing and Simulation (HPCS), pp. 478–484. IEEE Press, New York (2011)

    Chapter  Google Scholar 

  10. Lee, Y.C., Zomaya, A.Y.: Energy conscious scheduling for distributed computing systems under different operating conditions. IEEE Trans. Parallel Distrib. Syst. 22, 1374–1381 (2011)

    Article  Google Scholar 

  11. Burd, T.D., Brodersen, R.W.: Design issues for dynamic voltage scaling. In: Proceedings of the International Symposium on Low Power Electronics and Design, 2000. ISLPED’00, pp. 9–14. IEEE Press, New York (2000)

    Chapter  Google Scholar 

  12. de Langen, P., Juurlink, B.: Leakage-aware multiprocessor scheduling. J. Signal Process. Syst. 57(1), 73–88 (2009)

    Article  Google Scholar 

  13. Kwok, Y.-K., Ahmad, I.: Benchmarking the task graph scheduling algorithms. In: Proceedings of the First Merged International … and Symposium on Parallel and Distributed Processing 1998, Parallel Processing Symposium 1998 (IPPS/SPDP 1998), Mar–Apr 1998, pp. 531–537 (1998)

    Chapter  Google Scholar 

  14. Garey, M.R., Johnson, D.S.: Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman, New York (1990)

    Google Scholar 

  15. Ullman, J.D.: Np-complete scheduling problems. J. Comput. Syst. Sci. 10, 384–393 (1975)

    Article  MATH  MathSciNet  Google Scholar 

  16. Radulescu, A., van Gemund, A.J.C.: Fast and effective task scheduling in heterogeneous systems. In: Proceedings of 9th Heterogeneous Computing Workshop (HCW 2000), pp. 229–238 (2000)

    Chapter  Google Scholar 

  17. Lotfifar, F., Shahhoseini, H.S.: A low-complexity task scheduling algorithm for heterogeneous computing systems. In: Third Asia International Conference on Modelling Simulation (AMS’09), May 2009, pp. 596–601 (2009)

    Chapter  Google Scholar 

  18. Daoud, M.I., Kharma, N.: A high performance algorithm for static task scheduling in heterogeneous distributed computing systems. J. Parallel Distrib. Comput. 68(4), 399–409 (2008)

    Article  MATH  Google Scholar 

  19. Bansal, S., Kumar, P., Singh, K.: Dealing with heterogeneity through limited duplication for scheduling precedence constrained task graphs. J. Parallel Distrib. Comput. 65(4), 479–491 (2005)

    Article  MATH  Google Scholar 

  20. Topcuoglu, H., Hariri, S., Wu, M.-Y.: Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Trans. Parallel Distrib. Syst. 13(3), 260–274 (2002)

    Article  Google Scholar 

  21. Ranaweera, S., Agrawal, D.P.: A scalable task duplication based scheduling algorithm for heterogeneous systems. In: Proceedings of 2000 International Conference on Parallel Processing, pp. 383–390 (2000)

    Chapter  Google Scholar 

  22. Hagras, T., Brevecek, J.J.: A high performance, low complexity algorithm for compile-time task scheduling in heterogeneous systems. Parallel Comput. 31(7), 653–670 (2005)

    Article  Google Scholar 

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

    Article  Google Scholar 

  24. Bansal, S., Kumar, P., Singh, K.: An improved duplication strategy for scheduling precedence constrained graphs in multiprocessor systems. IEEE Trans. Parallel Distrib. Syst. 14(6), 533–544 (2003)

    Article  Google Scholar 

  25. Luo, P., Lü, K., Shi, Z.: A revisit of fast greedy heuristics for mapping a class of independent tasks onto heterogeneous computing systems. J. Parallel Distrib. Comput. 67(6), 695–714 (2007)

    Article  MATH  Google Scholar 

  26. Kwok, Y.-K., Ahmad, I.: Dynamic critical-path scheduling: an effective technique for allocating task graphs to multiprocessors. IEEE Trans. Parallel Distrib. Syst. 7(5), 506–521 (1996)

    Article  Google Scholar 

  27. Boeres, C., Filho, J.V., Rebello, V.E.F.: A cluster-based strategy for scheduling task on heterogeneous processors. In: 16th Symposium on Computer Architecture and High Performance Computing (SBAC-PAD 2004), Oct. 2004, pp. 214–221 (2004)

    Chapter  Google Scholar 

  28. Liou, J.C., Palis, M.A.: An efficient task clustering heuristic for scheduling dags on multiprocessors. In: Proceedings of Parallel and Distributed Processing Symposium (1996)

    Google Scholar 

  29. Fu, F., Bai, Y., Hu, X., Wang, J., Yu, M., Zhan, J.: 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), 28 July–1 August 2010, pp. 369–373 (2010)

    Google Scholar 

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

    Article  MATH  Google Scholar 

  31. Transmeta’s design guides and datasheets

  32. http://en.wikipedia.org/wiki/speedstep

  33. Mobile AMD-k6 processor power supply design. Application note

  34. Khokhar, A.A., Prasanna, V.K., Shaaban, M.E., Wang, C.-L.: Heterogeneous computing: challenges and opportunities. Computer 26(6), 18–27 (1993)

    Article  Google Scholar 

  35. Menasce, D.A., Saha, D., Porto, S.C.D., Almeida, V.A.F., Tripathi, S.K.: Static and dynamic processor scheduling disciplines in heterogeneous parallel architectures. J. Parallel Distrib. Comput. 28(1), 1–18 (1995)

    Article  MATH  Google Scholar 

  36. Intel: Pxa270 processor, electrical, mechanical, and thermal specification (2004)

  37. Wu, M.-Y., Gajski, D.D.: Hypertool: a programming aid for message-passing systems. IEEE Trans. Parallel Distrib. Syst. 1(3), 330–343 (1990)

    Article  Google Scholar 

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

    Article  MATH  MathSciNet  Google Scholar 

  39. Kim, S.J., Browne, J.C.: A general approach to mapping of parallel computation upon multiprocessor architectures. In: Proceedings of the International Conference on Parallel Processing, pp. 1–8 (1988)

    Google Scholar 

  40. Cormen, T.H., Leiserson, C.E., Rivest, R.L.: Introduction to Algorithms. MIT, Cambridge (2001)

    MATH  Google Scholar 

Download references

Acknowledgements

Thanks are due to three anonymous reviewers for their comments and suggestions on improving the manuscript. 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. 90715029, 61070057, 61370095, 61202109), the Cultivation Fund of the Key Scientific and Technical Innovation Project, Ministry of Education of China (Grant No. 708066), the Ph.D. Programs Foundation of Ministry of Education of China (20100161110019) and Project supported by the National Science Foundation for Distinguished Young Scholars of Hunan (12JJ1011).

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. Energy-aware task scheduling in heterogeneous computing environments. Cluster Comput 17, 537–550 (2014). https://doi.org/10.1007/s10586-013-0297-0

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10586-013-0297-0

Keywords

Navigation