English

Performance Assessment of OpenMP Compilers Targeting NVIDIA V100 GPUs

Performance 2020-12-04 v3 Distributed, Parallel, and Cluster Computing

Abstract

Heterogeneous systems are becoming increasingly prevalent. In order to exploit the rich compute resources of such systems, robust programming models are needed for application developers to seamlessly migrate legacy code from today's systems to tomorrow's. Over the past decade and more, directives have been established as one of the promising paths to tackle programmatic challenges on emerging systems. This work focuses on applying and demonstrating OpenMP offloading directives on five proxy applications. We observe that the performance varies widely from one compiler to the other; a crucial aspect of our work is reporting best practices to application developers who use OpenMP offloading compilers. While some issues can be worked around by the developer, there are other issues that must be reported to the compiler vendors. By restructuring OpenMP offloading directives, we gain an 18x speedup for the su3 proxy application on NERSC's Cori system when using the Clang compiler, and a 15.7x speedup by switching max reductions to add reductions in the laplace mini-app when using the Cray-llvm compiler on Cori.

Keywords

Cite

@article{arxiv.2010.09454,
  title  = {Performance Assessment of OpenMP Compilers Targeting NVIDIA V100 GPUs},
  author = {Joshua Hoke Davis and Christopher Daley and Swaroop Pophale and Thomas Huber and Sunita Chandrasekaran and Nicholas J. Wright},
  journal= {arXiv preprint arXiv:2010.09454},
  year   = {2020}
}

Comments

20 pages, 7 figures, accepted in WACCPD 2020 at SC20 (under publication with Springer)

R2 v1 2026-06-23T19:27:01.560Z