Machine learning reduces tuning steps to speed up hpc performance
Accelerating Transfer-Learning-Based Autotuning with Predictive LLVM IR Performance Ranking
PerformanceMachine Learning
Summary
High performance computing systems are very complex and finding the best settings to make them run faster takes a lot of time and testing. This paper introduces a new way to speed up that process by using a machine learning model that predicts which program versions will perform better, so fewer tests are needed. The authors use transfer learning to borrow knowledge from similar tasks, helping to quickly find good configurations. Their method reduces the number of performance checks by up to 62%, making tuning more efficient.
What this means in practice
- •For hpc software developers: Reduce the time and computational cost required to find optimal program configurations for HPC applications.
- •For compiler engineers: Improve compiler optimization passes by quickly ranking intermediate representations to guide tuning decisions.
Authors
Md Arafat Hossain, Thomas Randall, Akash Dutta, Xingfu Wu, Rong Ge, Ali Jannesari
Abstract
As the complexity of High Performance Computing (HPC) ecosys- tems continually increases, achieving optimal performance becomes a challenge. Traditional performance autotuning techniques pro- vide promising means to navigate this complexity, these techniques remain computationally intensive and require many evaluations to find optimal configurations. This work proposes an autotuning framework that designs a machine learning-based ensemble LLVM Intermediate Representa- tion (IR) ranker, Neural Configuration Scorer (NCS). NCS ranks the performance of IRs sampled by a transfer-learning-based autotuner, improving the efficiency of the tuning process by reducing tuning overheads and circumventing subpar evaluations. By leveraging knowledge from related tasks, we are able to effectively exploit the transfer relationship to access high-performing configurations in fewer samples than traditional techniques that rely upon itera- tive refinement. Our framework can achieve similar performance improvements as state-of-the-art autotuning techniques with up to 61.67% fewer evaluations, averaging 27.85% fewer evaluations across various HPC benchmarks.