Skip to main content
SHARE
Publication

CCAMP: An Integrated Translation and Optimization Framework for OpenACC and OpenMP...

by Jacob Lambert, Seyong Lee, Jeffrey S Vetter, Allen Malony
Publication Type
Conference Paper
Book Title
The International Conference for High Performance Computing, Networking, Storage, and Analysis
Publication Date
Page Numbers
1387 to 1400
Volume
1
Publisher Location
District of Columbia, United States of America
Conference Name
The International Conference for High Performance Computing, Networking, Storage, and Analysis (SC 2020)
Conference Location
Atlanta, Georgia, United States of America
Conference Sponsor
IEEE
Conference Date
-

Heterogeneous computing and exploration into specialized accelerators are inevitable in current and future supercomputers. Although this diversity of devices is promising for performance, the array of architectures presents programming challenges. High-level programming strategies have emerged to face these challenges, such as the OpenMP offloading model and OpenACC. The varying levels of support for these standards, however, within vendor-specific and open-source tools, as well as the lack of performance portability across devices, have prevented the standards from achieving their goals. To address these shortcomings, we present CCAMP, an OpenMP and OpenACC interoperable framework. CCAMP provides two primary facilities: language translation between the two standards and device-specific directive optimization within each standard. We show that by using the CCAMP framework, programmers can easily transplant non-portable code into new ecosystems for new architectures. Additionally, by using CCAMP device-specific directive optimizations, users can achieve optimized performance across architectures using a single source code.