Scheduling-based power capping in high performance computing systems - Borghesi, Andrea; Bartolini, Andrea; Lombardi, Michele; Milano, Michela; Benini, Luca (Sustainable computing informatics and systems, 2018)
•A HPC job dispatcher capable of bounding the power consumption is proposed.•The novel approach combines machine learning techniques and a constraint programming model.•Key idea: predict the power consumption of HPC application and use this knowledge to schedule them effectively.•A thorough comparison with other methods from the state-of-the-art is performed. Supercomputer installed capacity worldwide increased for many years and further growth is expected in the future. The next goal for high performance computing (HPC) systems is reaching Exascale. The increase in computational power threatens to lead to unacceptable power demands, if future machines will be built using current technology. Therefore reducing supercomputer power consumption has been the subject of intense research. A common approach to curtail the excessive power demands of supercomputers is to hard-bound their consumption, power capping. Power capping can be enforced by reactively throttling system performance when the power bound is hit, or by scheduling workload in a proactive fashion to avoid hitting the bound. In this paper we explore the second approach: our scheduler meets power capping constraints and minimizes quality-of-service (QoS) disruption through smart planning of the job execution order. The approach is based on constraint programming in conjunction with a machine learning module predicting the power consumptions of HPC applications. We evaluate our method on the Eurora supercomputer, using both synthetic workloads and historical traces. Our approach outperforms the state-of-the-art power capping techniques in terms of waiting time and QoS, while keeping schedule computation time under control.