TY - GEN
T1 - Exploiting Dynamism in HPC Applications to Optimize Energy-Efficiency
AU - Kumaraswamy, Madhura
AU - Gerndt, Michael
N1 - Publisher Copyright:
© 2020 ACM.
PY - 2020/8/17
Y1 - 2020/8/17
N2 - The growing need for computational performance is resulting in an increase in the energy consumption of HPC systems, which is a major challenge to reach Exascale computing. To overcome this challenge, we developed a tuning plugin that targets applications that exhibit dynamically changing characteristics between iterations of the time loop as well as change in the control flow within the time loop itself. To analyze the inter-loop dynamism, we propose features to characterize the behaviour of loops for clustering via DBSCAN and spectral clustering. To save tuning time and costs, we implemented a random search strategy with a Gaussian probability distribution model to test a large number of system configurations in a single application run. The goal is to select the best configurations of the CPU and uncore frequencies for groups of similarly behaving loops, as well as individual instances of regions called within these loops based on their unique computational characteristics. During production runs, the configurations are dynamically switched for different code regions. The results of our experiments for two highly dynamic real-world applications highlight the effectiveness of our methodology in optimizing energy-efficiency.
AB - The growing need for computational performance is resulting in an increase in the energy consumption of HPC systems, which is a major challenge to reach Exascale computing. To overcome this challenge, we developed a tuning plugin that targets applications that exhibit dynamically changing characteristics between iterations of the time loop as well as change in the control flow within the time loop itself. To analyze the inter-loop dynamism, we propose features to characterize the behaviour of loops for clustering via DBSCAN and spectral clustering. To save tuning time and costs, we implemented a random search strategy with a Gaussian probability distribution model to test a large number of system configurations in a single application run. The goal is to select the best configurations of the CPU and uncore frequencies for groups of similarly behaving loops, as well as individual instances of regions called within these loops based on their unique computational characteristics. During production runs, the configurations are dynamically switched for different code regions. The results of our experiments for two highly dynamic real-world applications highlight the effectiveness of our methodology in optimizing energy-efficiency.
KW - Dynamic Voltage and Frequency Scaling
KW - Uncore Frequency Scaling
KW - autotuning
KW - energy-efficiency
KW - search space optimization
UR - http://www.scopus.com/inward/record.url?scp=85091077739&partnerID=8YFLogxK
U2 - 10.1145/3409390.3409399
DO - 10.1145/3409390.3409399
M3 - Conference contribution
AN - SCOPUS:85091077739
T3 - ACM International Conference Proceeding Series
BT - 49th International Conference on Parallel Processing, ICPP 2020 - Workshop Proceedings
PB - Association for Computing Machinery
T2 - 49th International Conference on Parallel Processing, ICPP Workshops 2020
Y2 - 17 August 2020 through 20 August 2020
ER -