Porting OpenACC to OpenMP on heterogeneous systems
Hichan Agueny

TL;DR
This paper explores converting OpenACC code to OpenMP for GPU programming on heterogeneous systems, demonstrating performance benefits and providing insights into models and compilation tools.
Contribution
It presents a method for translating OpenACC directives to OpenMP, including experimental performance analysis and a review of related compilation tools.
Findings
GPU acceleration increased performance by nearly 52 times
OpenACC to OpenMP translation is feasible with existing tools
Performance varies depending on directives and system configurations
Abstract
This documentation is designed for beginners in Graphics Processing Unit (GPU)-programming and who want to get familiar with OpenACC and OpenMP offloading models. Here we present an overview of these two programming models as well as of the GPU-architectures. Specifically, we provide some insights into the functionality of these models and perform experiments involving different directives and discuss their performance. This is achieved through the use of a mini-application based on solving numerically the Laplace equation. Such experiments reveal the benefit of the use of GPU, which in our case manifests by an increase of the performance by almost a factor of 52. We further carry out a comparative study between the OpenACC and OpenMP models in the aim of converting OpenACC to OpenMP on heterogeneous systems. In this context, we present a short overview of the open-source OpenACC…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Computational Physics and Python Applications · Distributed and Parallel Computing Systems
