Static Graphs for Coding Productivity in OpenACC
Document typeConference lecture
PublisherInstitute of Electrical and Electronics Engineers (IEEE)
Rights accessOpen Access
ProjectEPEEC - European joint Effort toward a Highly Productive Programming Environment for Heterogeneous Exascale Computing (EPEEC) (EC-H2020-801051)
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.
CitationToledo, L. [et al.]. Static Graphs for Coding Productivity in OpenACC. A: International Conference on High Performance Computing. "2021 IEEE 28th International Conference on High Performance Computing, Data, and Analytics (HiPC): 17-20 Dec. 2021, Bengaluru, India: proceedings". Institute of Electrical and Electronics Engineers (IEEE), 2022, p. 364-369. ISBN 978-1-6654-1016-8. DOI 10.1109/HiPC53243.2021.00050.
All rights reserved. This work is protected by the corresponding intellectual and industrial property rights. Without prejudice to any existing legal exemptions, reproduction, distribution, public communication or transformation of this work are prohibited without permission of the copyright holder