Energy-optimal configurations for High-Performance Computing applications: automated low-impact characterization and performance optimization of shared-memory applications
Vitor Ramos Gomes Da Silva · ORBi UMONS · 2024
Energy consumption is key to enabling exascale High-performance Com- puting (HPC). However, energy-optimized hardware and software combi- nations could still be inefficient if the software operates poorly. This work proposes a set of tools, models, and algorithms for energy optimization aimed at high-performance computing based on knowledge of the application and the specific hardware architecture. The main contributions of this work are. A framework called Parallel Scalability Suite (PaScal Suite) automati- cally measures and compares multiple executions of a parallel application according to various scenarios characterized by input size, number of threads, cores, and frequencies. As a result, PascalSuite can automate designing application models with an overhead of less than 1%. An entire system energy model based on the CPU frequency and the number of cores. The model aims to understand and optimize the energy behavior of parallel applications in HPC systems according to application parameters, such as the degree of parallelism, input load, and CPU parameters related to dynamic and static power. A methodology that combines measurement data with a heuristic algorithm to provide insights into choosing the best phase divisions. Our heuristic can reduce the scan space from 107000 to 102 with an average error of 10% and up to 38% reduction in energy consumption using optimal distribution compared to standard Linux DVFS. A novel normalized time representation of the application characterizes the application parameters and model, named application fingerprint.