The Public repository for the OpenACC Validation & Verification Testsuite.
Explore the docs »
View Results
·
Report Bug
·
Request Feature
Table of Contents
This repository is updated with OpenACC test codes validating and verifying implementations of features and its conformance to the OpenACC specification. We are continuously adding and editing tests to conform to the latest version of the OpenACC Specification.
What we do:
- Revealing ambiguities in the OpenACC Specification
- Determining missing implementation of a feature
- Highlighting unmentioned restriction of a feature
- Evaluating implementations for multiple target platforms
- Identifying and reporting compiler bugs
Consult our website for more details on results and our project OpenACC V&V Website.
Need to have the following installed on your system:
In order to run the suite, we have provided a Python script, infrastructure.py that can be run. It is recommended to use Python 3.3 or later.
-
Clone the repo
git clone https://github.com/OpenACCUserGroup/OpenACCV-V.git
-
Change the
init_config.txt
file to match your configuration -
Run the script
python3 infrastructure.py -c=<config_input_file> -o=<output_file>
or
python3 infrastructure.py -c=<configuration_file[,configuration_file2]> -o=<output_file> -in=<input_file[,input_file2]> verbose -system=<system_name> -env=<environment_output>
Once you have processed your results and have your JSON file, parse through the results using the Directive Based V&V Results Generator: https://crpl.cis.udel.edu/oaccvv/generator/
-
Input the JSON file you received from running the testsuite into the generator inside of "Upload Results".
-
View a summary of your results, toggle between runtime/compiler to view each output.
-
Click on the "View Details" button inside the "Upload Results" section for downloadable Excel reports. Which will also include All Tests, Compiler Failures, and Runtime Failure drop downs that include all details about the individual tests.
-
Compare two JSON files by uploading them into the "Compare Two Results" section to generate a detailed graph. Toggle between runtime/compiler to view each output. You can hover over each bar on the graph to see more details.
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Please send results from a run or code for particular OpenACC features
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with tags. Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Branch (
git checkout -b feature/missing
) - Commit your Changes (
git commit -m 'Add feature'
) - Push to the Branch (
git push origin feature/missing
) - Open a Pull Request
Distributed under the BSD 3-Clause License. See LICENSE.txt
for more information.
Aaron Jarmusch - [email protected]
Sunita Chandrasekaran - [email protected]
CRPL - https://crpl.cis.udel.edu/
Website Link: https://crpl.cis.udel.edu/oaccvv/results/
Results Generator: https://crpl.cis.udel.edu/oaccvv/generator/
Current Student Authors:
- Nathan Graddon
- Aaron Jarmusch
Contributors:
- Joel Denny
- Tobias Burnus
- Jeff Larkin
- Mathew Colgrove
- Christian Munley
Past Authors:
- Kyle Friedline
- Aaron Liu
- Vaidhyanathan Ravichandran
- Daniel Horta
- Will Gunter
- Olive Odida
Special thanks to the following organizations for their support
All publications relating to OpenACC V&V Testsuite
-
Jarmusch, A. M., Liu, A., Munley, C., Horta, D., Ravichandran, V., Denny, J., & Chandrasekaran, S. (2022). Analysis of Validating and Verifying OpenACC Compilers 3.0 and Above. Presentation given at the SC22 Conference. SC22
-
Jarmusch, A., Baker, N. & Chandrasekaran, Su. (2021). Using IU Jetstream for OpenMP offloading and OpenACC testsuites. Presentation given at the Jetstream Research Experience for Undergraduates Program Presentation Session. Also Presented at the Super Computer Conference in 2021. SC21
-
"OpenACC 2.5 Validation Testsuite targeting multiple architectures" at the 2nd International Workshop on Performance Portable Programming Models for Accelerators (P^3MA) co-located with ISC, Germany, 2017. Paper: https://link.springer.com/chapter/10.1007/978-3-319-67630-2_39 Presentation Slides: http://www.csm.ornl.gov/workshops/p3ma2017/documents/Chandrasekaran_OpenACCV_V2.5.pdf
-
"2014 IEEE International Parallel & Distributed Processing Symposium Workshops" Paper: https://ieeexplore.ieee.org/abstract/document/6969543?casa_token=dIj3u0IMYakAAAAA:iri-F4x3Hsbd0unFKtQlsMrb40KMHLX5-6IAD64-uzWZDjEux8_8ue1QgTMMZi7uVRurnWJkHw