학술논문

ECP SOLLVE: Validation and Verification Testsuite Status Update and Compiler Insight for OpenMP
Document Type
Conference
Source
2022 IEEE/ACM International Workshop on Performance, Portability and Productivity in HPC (P3HPC) P3HPC Performance, Portability and Productivity in HPC (P3HPC), 2022 IEEE/ACM International Workshop on. :123-135 Nov, 2022
Subject
Computing and Processing
Productivity
Codes
Conferences
Mission critical systems
Ecosystems
Graphics processing units
C++ languages
OpenMP
GPU
Offloading
LLVM
Language
ISSN
2831-3909
Abstract
The OpenMP language continues to evolve with every new specification release, as does the need to validate and verify the new features that have been implemented by the different vendors. With the release of OpenMP 5.0 and OpenMP 5.1, new target offload and host-based features have been introduced to the programming model. While OpenMP continues to grow in maturity, there is an observable growth in the number of compiler and hardware vendors that support OpenMP. In this manuscript, the main focus is on evaluating the conformity and OpenMP implementation progress of various compiler vendors such as Cray, IBM, GNU, Clang/LLVM, NVIDIA, and Intel. More specifically, the 4.5, 5.0, and 5.1 versions of the OpenMP specification are analyzed. For our experimental setup, the Crusher and Summit computing systems hosted by Oak Ridge National Lab’s Computing Facilities are utilized. The effort of vendor agnostic analysis of these implementations is especially valuable for application developers who are using new OpenMP features to accelerate their scientific codes. Insights are presented into the current implementation status of various vendors, the progression of specific compiler’s support for OpenMP overtime, the subset of OpenMP 4.5, 5.0, and 5.1 that is supported by all compilers, and examples of how our test suite has influenced discussion regarding the correct interpretation of the OpenMP specification. By evaluating OpenMP conformity of pre-Exascale computing systems, the aim is to detail progress and status of AMD + Cray ecosystem before the system and their OpenMP implementation is used for mission critical applications when the first Exascale Computer Frontier is made available to applications.