Power Constrained Autotuning using Graph Neural Networks
Not on the map. Why?
Abstract (arXiv)
Recent advances in multi and many-core processors have led to significant improvements in the performance of scientific computing applications. However, the addition of a large number of complex cores have also increased the overall power consumption, and power has become a first-order design constraint in modern processors. While we can limit power consumption by simply applying software-based power constraints, applying them blindly will lead to non-trivial performance degradation. To address the challenge of improving the performance, power, and energy efficiency of scientific applications on modern multi-core processors, we propose a novel Graph Neural Network based auto-tuning approach that (i) optimizes runtime performance at pre-defined power constraints, and (ii) simultaneously optimizes for runtime performance and energy efficiency by minimizing the energy-delay product. The key idea behind this approach lies in modeling parallel code regions as flow-aware code graphs to capture both semantic and structural code features. We demonstrate the efficacy of our approach by conducting an extensive evaluation on 30 benchmarks and proxy-/mini-applications with 68 OpenMP code regions. Our approach identifies OpenMP configurations at different power constraints that yield a geometric mean performance improvement of more than 25% and 13% over the default OpenMP configuration on a 32-core Skylake and a 16-core Haswell processor respectively. In addition, when we optimize for the energy-delay product, the OpenMP configurations selected by our auto-tuner demonstrate both performance improvement of 21% and 11% and energy reduction of 29% and 18% over the default OpenMP configuration at Thermal Design Power for the same Skylake and Haswell processors, respectively.
Key facts. Cited by 2 papers in the map (data through 7 Oct 2026). Builds on 11 of its 48 references that are in the map. First posted on arXiv 22 Feb 2023.
Builds on
11 of 48 references.
References · 11
- 2019A Comprehensive Survey on Graph Neural Networkscited by 2,906
- 2017Modeling Relational Data with Graph Convolutional Networkscited by 1,684
- 2018Graph Neural Networks: A Review of Methods and Applicationscited by 1,571
- 2020GraphCodeBERT: Pre-training Code Representations with Data Flowcited by 600
- 2017A Survey of Machine Learning for Big Code and Naturalnesscited by 220
- 2018A Survey on Compiler Autotuning using Machine Learningcited by 40
- 2021MLGO: a Machine Learning Guided Compiler Optimizations Frameworkcited by 40
- 2019NeuroVectorizer: End-to-End Vectorization with Deep Reinforcement Learningcited by 37
- 2020Static Neural Compiler Optimization via Deep Reinforcement Learningcited by 14
- 2021GraphCode2Vec: Generic Code Embedding via Lexical and Program Dependence Analysescited by 11
- 2022Learning Intermediate Representations using Graph Neural Networks for NUMA and Prefetchers Optimizationcited by 9
Built on by
Citing papers per year: 2023: 1; 2024: 0; 2025: 1.
2 papers.