Clacc: Translating OpenACC to OpenMP in Clang
- ORNL
OpenACC was launched in 2010 as a portable programming model for heterogeneous accelerators. Although various implementations already exist, no extensible, open-source, production-quality compiler support is available to the community. This deficiency poses a serious risk for HPC application developers targeting GPUs and other accelerators, and it limits experimentation and progress for the OpenACC specification. To address this deficiency, Clacc is a recent effort funded by the US Exascale Computing Project to develop production OpenACC compiler support for Clang and LLVM. A key feature of the Clacc design is to translate OpenACC to OpenMP to build on Clang's existing OpenMP compiler and runtime support. In this paper, we describe the Clacc goals and design. We also describe the challenges that we have encountered so far in our prototyping efforts, and we present some early performance results.
- Research Organization:
- Oak Ridge National Laboratory (ORNL), Oak Ridge, TN (United States)
- Sponsoring Organization:
- USDOE Office of Science (SC)
- DOE Contract Number:
- AC05-00OR22725
- OSTI ID:
- 1489555
- Country of Publication:
- United States
- Language:
- English
Similar Records
Clacc: OpenACC for C/C++ in Clang
OpenACC Profiling Support for Clang and LLVM using Clacc and TAU
Experiences in extending parallware to support OpenACC. In: WACCPD '15 Proceedings of the Second Workshop on Accelerator Programming using Directives, Article No. 4
Journal Article
·
Thu Jun 13 20:00:00 EDT 2024
· International Journal of High Performance Computing Applications
·
OSTI ID:2438826
OpenACC Profiling Support for Clang and LLVM using Clacc and TAU
Conference
·
Sun Nov 01 00:00:00 EDT 2020
·
OSTI ID:1771865
Experiences in extending parallware to support OpenACC. In: WACCPD '15 Proceedings of the Second Workshop on Accelerator Programming using Directives, Article No. 4
Conference
·
Wed Dec 31 23:00:00 EST 2014
·
OSTI ID:1567642