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.








Similar content being viewed by others
References
Freund, R.F., Siegel, H.J.: Heterogeneous processing. Computer 26(6), 13–17 (1993)
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)
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)
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)
Pruhs, K., van Stee, R., Uthaisombut, P.: Speed scaling of tasks with precedence constraints. Theory Comput. Syst. 43, 67–80 (2008)
Bunde, D.P.: Power-aware scheduling for makespan and flow. J. Sched. 12(5), 489–500 (2009)
Baskiyar, S., Abdel-Kader, R.: Energy aware dag scheduling on heterogeneous systems. Clust. Comput. 13, 373–383 (2010)
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)
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)
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)
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)
de Langen, P., Juurlink, B.: Leakage-aware multiprocessor scheduling. J. Signal Process. Syst. 57(1), 73–88 (2009)
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)
Garey, M.R., Johnson, D.S.: Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman, New York (1990)
Ullman, J.D.: Np-complete scheduling problems. J. Comput. Syst. Sci. 10, 384–393 (1975)
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)
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)
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)
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)
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)
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)
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)
Lai, K.-C., Yang, C.-T.: A dominant predecessor duplication scheduling algorithm for heterogeneous systems. J. Supercomput. 44, 126–145 (2008)
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)
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)
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)
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)
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)
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)
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)
Transmeta’s design guides and datasheets
Mobile AMD-k6 processor power supply design. Application note
Khokhar, A.A., Prasanna, V.K., Shaaban, M.E., Wang, C.-L.: Heterogeneous computing: challenges and opportunities. Computer 26(6), 18–27 (1993)
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)
Intel: Pxa270 processor, electrical, mechanical, and thermal specification (2004)
Wu, M.-Y., Gajski, D.D.: Hypertool: a programming aid for message-passing systems. IEEE Trans. Parallel Distrib. Syst. 1(3), 330–343 (1990)
Cosnard, M., Marrakchi, M., Robert, Y., Trystram, D.: Parallel Gaussian elimination on an mimd computer. Parallel Comput. 6(3), 275–296 (1988)
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)
Cormen, T.H., Leiserson, C.E., Rivest, R.L.: Introduction to Algorithms. MIT, Cambridge (2001)
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
Corresponding author
Rights 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
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10586-013-0297-0