High-level Programming of Vulkan-based GPUs Through OpenMP
Department of Computer Science and Engineering, University of Ioannina, 45510 Ioannina, Greece
2026-03-12
@article{kasmeridis2026high,
title={High-level Programming of Vulkan-based GPUs Through OpenMP},
author={Kasmeridis, Ilias K and Dimakopoulos, Vassilios V},
journal={International Journal of Parallel Programming},
volume={54},
number={1},
pages={3},
year={2026},
publisher={Springer}
}
Modern applications often involve complex, structured or data-parallel computations on large datasets. Traditionally, GPUs have served as the primary accelerators for such tasks, mostly through compute-focused models like CUDA and OpenCL. Vulkan is a more recent cross-platform API, widely adopted for both high-performance graphics and compute. These models require lower-level programming, as developers have to be aware of architectural details; this is not easily accomplished given the dramatic rise in hardware heterogeneity. It has thus become increasingly desirable to adopt higher-level models that abstract away the low-level hardware and API details, and simplify GPU programming. In this paper we present a full-fledged OpenMP translator and runtime offloading infrastructure that targets the Vulkan Compute pipeline. While previous works usually focus on OpenCL or CUDA, this is the first time an OpenMP compiler targets Vulkan shaders. As such, apart from the support for off-the-shelf NVIDIA and AMD GPUs, we are the first to provide OpenMP support for mobile and embedded GPUs, such as VideoCore GPUs. The proposed translator, which is based on an open-source compilation framework, receives standard OpenMP code and converts it to tunable Vulkan shaders. Our approach preserves the simplicity of higher-level programming, while still achieving high performance, as demonstrated by our experimental results.
March 26, 2026 by hgpu
Your response
You must be logged in to post a comment.




