arrow
Return

Predicting Performance for OpenMP GPU Parameter Choices

delete2026-01-01
delete0
PRE
AI
A
Akil Andrews *
Q
Qing Yi
P
Pei‐Hung Lin
J
Johannes Doerfert
DOI:10.1007/978-3-032-06343-4_9delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
GPUs are widely used to accelerate scientific computing for high performance, with OpenMP providing readily available directivebased programming support for developers to offload computations. Unlike CUDA support, OpenMP provides default offloading configurations. However, for optimal performance, a developer must be able to select the best relevant offloading configurations to meet performance expectations (e.g. how many threads and blocks) for each kernel. Finding the best launch parameter values using auto-tuning and/or machine learning optimizations can be time-consuming and resource intensive. This paper seeks to address this challenge by developing a machine learning surrogate model that predicts relative kernel performance at minimal costs. The shape of the relative run-time execution distribution of the application has fundamental implications for performance prediction, leading us to implement a novel two-stage approach. Given an application's compile-time information, our novel two-stage classifier predicts whether the launch configuration yields optimal or suboptimal relative performance. When applied to real-world benchmarks, we achieved approximate to 91% prediction accuracy classifying unseen instances and approximate to 70% with unseen benchmark sets.
Keywords:
LLVM
OpenMP
Performance Prediction
Decision
Trees
GPU
Grid Size

Journal

O
OPENMP: BALANCING PRODUCTIVITY AND PERFORMANCE PORTABILITY, IWOMP 2025
IF:
0
Papers:
14
Citations:
0

Organization

U
united states department of energy (doe)
Scholars:
11.3W
Papers: 9.6W
Citations: 246
U
university of new mexico
Scholars:
1.6W
Papers: 1.3W
Citations: 25