Abstract
The main contribution of this work is to increase the coding productivity for GPU programming by using the concept of Static Graphs. To do so, we have combined the new CUDA Graph API with the OpenACC programming model. We use as test cases a well-known and widely used problems in HPC and AI: the Particle Swarm Optimization. We complement the OpenACC functionality with the use of CUDA Graph, achieving accelerations of more than one order of magnitude, and a performance very close to a reference and optimized CUDA code. Finally, we propose a new specification to incorporate the concept of Static Graphs into the OpenACC specification.
Original language | English |
---|---|
Title of host publication | Proceedings - 2021 IEEE 28th International Conference on High Performance Computing, Data, and Analytics, HiPC 2021 |
Publisher | Institute of Electrical and Electronics Engineers Inc. |
Pages | 364-369 |
Number of pages | 6 |
ISBN (Electronic) | 9781665410168 |
DOIs | |
State | Published - 2021 |
Event | 28th IEEE International Conference on High Performance Computing, Data, and Analytics, HiPC 2021 - Virtual, Bangalore, India Duration: Dec 17 2021 → Dec 18 2021 |
Publication series
Name | Proceedings - 2021 IEEE 28th International Conference on High Performance Computing, Data, and Analytics, HiPC 2021 |
---|
Conference
Conference | 28th IEEE International Conference on High Performance Computing, Data, and Analytics, HiPC 2021 |
---|---|
Country/Territory | India |
City | Virtual, Bangalore |
Period | 12/17/21 → 12/18/21 |
Funding
ACKNOWLEDGMENT This project has received funding from the EPEEC project from the European Union’s Horizon 2020 Research and Innovation program under grant agreement No. 801051.
Keywords
- Coding Productivity
- Data Dependencies
- OpenACC
- Particle Swarm Optimization
- Static Graph
- Tasking