Validation and Verification Testsuiet OpenACC 2.x

May 26, 2020

OpenACC/NVIDIA: Creating a validation and verification testsuite for OpenACC 2.x features

PI: Sunita Chandrasekaran
Students: Kyle Friedline
Collaborators:

  • NVIDIA: Mat Colgrove, Duncan Poole, Christophe Harle

  • Mentor Graphics: Catherine Moore, Thomas Schwinge

Funding Agency: NVIDIA/OpenACC

Duration: 09/01/2016 – 09/01/2021

Project Summary:
The goal of this project is to build a validation and a verification testsuite for the OpenACC Programming Model. Since 2016, we have created 1081 functional/unit test codes to verify and validate implementations of OpenACC and its conformance to the OpenACC specification. Our project also includes an infrastructure that makes it easier to capture the tests that failed to compile, erred at runtime and which segments of a given test failed.

OpenACC, since its inception in 2011, has been widely adopted by hundreds of scientific developers to migrate scientific including production applications to large computing platforms. These applications include Gaussian, AN- SYS, ICON among other codes. This adoption was made possible by robust and stable compilers which in turn require rigorous testing for compiler and runtime errors, reporting these errors, and re-testing newer compiler version for fixes. The iterative testing process has enabled PGI and GCC (Mentor Graphics) OpenACC compiler implementations to be easily used by developers for their codes.

GitHub:

The software is open source and available on GitHub: https://github.com/OpenACCUserGroup/OpenACCV-V.

Publications:

  • Kyle Friedline, Sunita Chandrasekaran, Graham Lopez, and Oscar Hernandez. ”OpenACC 2.5 validation test- suite targeting multiple architectures.” In the proceedings of P3MA of the International Conference on High Performance Computing (ISC), pp. 557-575. Springer, 2017. DOI: https://doi.org/10.1007/978-3-319-67630-2_39.