Performance assessment of CUDA and OpenACC in large scale combustion simulations
Guillermo Oyarzun, Daniel Mira, Guillaume Houzeaux

TL;DR
This paper compares CUDA and OpenACC approaches in large-scale combustion simulations using the Alya CFD code, highlighting performance differences and optimization strategies for GPU and CPU execution.
Contribution
It provides a detailed performance analysis of CUDA and OpenACC in combustion CFD simulations, including new data structures for SIMD and stream processing.
Findings
CUDA is up to 2 times faster than OpenACC for matrix assembly.
CPU performance improved by up to 25% with new data structures.
Similar performance for vector operations in linear solver across CUDA and OpenACC.
Abstract
GPUs have climbed up to the top of supercomputer systems making life harder to many legacy scientific codes. Nowadays, many recipes are being used in such code's portability, without any clarity of which is the best option. We present a comparative analysis of the two most common approaches, CUDA and OpenACC, into the multi-physics CFD code Alya. Our focus is the combustion problems which are one of the most computing demanding CFD simulations. The most computing-intensive parts of the code were analyzed in detail. New data structures for the matrix assembly step have been created to facilitate a SIMD execution that benefits vectorization in the CPU and stream processing in the GPU. As a result, the CPU code has improved its performance by up to 25%. In GPU execution, CUDA has proven to be up to 2 times faster than OpenACC for the assembly of the matrix. On the contrary, similar…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Computational Fluid Dynamics and Aerodynamics · Simulation Techniques and Applications
