Adaptive energy-efficient scheduling algorithm for parallel tasks on homogeneous clusters Wei Liu a,b,c,d,f , Wei Du a,b,c,n , Jing Chen e , Wei Wang c,d , GuoSun Zeng c,d a College of Computer Science & Technology, Wuhan University of Technology, Wuhan 430063, China b State Key Lab of Software Engineering, Wuhan University, Wuhan 430072, China c Key Laboratory of Embedded System and Service Computing Ministry of Education, Tongji University, Shanghai 200092, China d Department of Computer Science and Technology, Tongji University, Shanghai 200092, China e Computer School, Wuhan University, Wuhan 430079, China f State Key Laboratory for Novel Software Technolog, Nanjing University, Nanjing 210046, China article info Article history: Received 25 March 2013 Received in revised form 26 September 2013 Accepted 17 October 2013 Available online 31 October 2013 Keywords: Homogeneous clusters Dynamic voltage scaling (DVS) Task duplication Adaptive threshold Energy efficiency abstract Increasing attention has been directed towards the two key issues of performance and energy consumption for parallel applications in high performance clusters. The traditional energy-efficient scheduling algorithms mainly leverage a threshold to balance system performance and energy consumption. But the random threshold cannot flexibly adapt the system characters and application requirements, thus making the scheduling results instable. In this paper, we propose a novel two-phase Adaptive Energy-efficient Scheduling (AES), which combines the Dynamic Voltage Scaling (DVS) technique with the adaptive task duplication strategy. The AES algorithm justifies threshold automatically, thus improving the system flexibility. In the first phase, we propose an adaptive threshold-based task duplication strategy, which can obtain an optimal threshold. It then leverages the optimal threshold to balance schedule lengths and energy savings by selectively replicating predecessor of a task. Therefore, the proposed task duplication strategy can get the suboptimal task groups that not only meet the performance requirement but also optimize the energy efficiency. In the second phase, it schedules the groups on DVS-enabled processors to reduce processor energy whenever tasks have slack time due to task dependencies. To illustrate the effectiveness of AES, we compare it with the duplication- based algorithms and the DVS-based algorithms. Extensive experimental results using the real-world applications demonstrate that our algorithm can effectively save energy while maintaining a good performance. & 2013 Elsevier Ltd. All rights reserved. 1. Introduction Traditionally, the studies of high performance computing are mainly focused on improving performance. In recent years, due to the high power consumption of microprocessors, network appli- ances and storage devices, the high performance clusters consume significant amounts of energy. For IBM Roadrunner ranking first in the 32nd Top500, its power is 2483.47 kW, and for Cray Jaguar ranking the second, its power is as high as 6950.60 kW (Ma et al., 2009). It has been estimated that in 2008 the energy consumed by IT infrastructure served to router, switch, server and data center was about 868 billion kWh, accounting for 5.3% of the global total power consumption. Under the current trend, by 2025, the average energy of IT industry is likely to be five times of 2008 (Global Action Plan, 2007). Therefore, the research focus turns to power management of clusters. It is obvious that high performance and high energy cost are two key features of high-performance clusters. Ignoring either of them is unreasonable and unpractical (Zong et al., 2011). In this paper, we design a novel scheduling algorithm—AES to improve energy efficiency at the premise of maintaining good performance (represented by schedule length) in clusters. The proposed algo- rithm combines an adaptive threshold-based duplication strategy with DVS technique to achieve the goal. The main idea behind the duplication-based scheduling is to utilize the processor idling time to duplicate predecessor tasks provided that the schedule length can be shortened. From the previous studies, we can draw that the task duplication strategy is efficient in improving the performance of parallel tasks with precedence constraints (Darbha and Agrawal, 1998; Bajaj and Agrawal, 2004). However, most existing duplication-based sche- duling algorithms replicate all possible tasks to shorten schedule length without considering energy consumption caused by making replicas. Contents lists available at ScienceDirect journal homepage: www.elsevier.com/locate/jnca Journal of Network and Computer Applications 1084-8045/$ - see front matter & 2013 Elsevier Ltd. All rights reserved. http://dx.doi.org/10.1016/j.jnca.2013.10.009 n Corresponding author at: College of Computer Science & Technology, Wuhan University of Technology, Wuhan 430063, China. Tel.: þ86 13971519632. E-mail addresses: whutduwei@whut.edu.cn, liuweiwhut@gmail.com (W. Du). Journal of Network and Computer Applications 41 (2014) 101–113