mlsanityData to 14 Oct 2026

Machine Learning-Driven Adaptive OpenMP For Portable Performance on Heterogeneous Systems

arXiv 2303.08873 ↗First posted 15 Mar 2023cs.PL cs.DC cs.LGcited by 0

Not on the map. Why?

Abstract (arXiv)

Heterogeneity has become a mainstream architecture design choice for building High Performance Computing systems. However, heterogeneity poses significant challenges for achieving performance portability of execution. Adapting a program to a new heterogeneous platform is laborious and requires developers to manually explore a vast space of execution parameters. To address those challenges, this paper proposes new extensions to OpenMP for autonomous, machine learning-driven adaptation. Our solution includes a set of novel language constructs, compiler transformations, and runtime support. We propose a producer-consumer pattern to flexibly define multiple, different variants of OpenMP code regions to enable adaptation. Those regions are transparently profiled at runtime to autonomously learn optimizing machine learning models that dynamically select the fastest variant. Our approach significantly reduces users' efforts of programming adaptive applications on heterogeneous architectures by leveraging machine learning techniques and code generation capabilities of OpenMP compilation. Using a complete reference implementation in Clang/LLVM we evaluate three use-cases of adaptive CPU-GPU execution. Experiments with HPC proxy applications and benchmarks demonstrate that the proposed adaptive OpenMP extensions automatically choose the best performing code variants for various adaptation possibilities, in several different heterogeneous platforms of CPUs and GPUs.

Key facts. No citing papers in the map yet (data through 14 Oct 2026). Builds on 3 of its 31 references that are in the map. First posted on arXiv 15 Mar 2023.

Builds on

3 of 31 references.

References · 3

  1. 2018A Survey on Compiler Autotuning using Machine Learningcited by 40
  2. 2017CLTune: A Generic Auto-Tuner for OpenCL Kernelscited by 27
  3. 2018Machine Learning in Compiler Optimisationcited by 13

Built on by

Not cited yet.