Lessons in Programming Model Comparisons Using OpenMP and CUDA for Targetting GPUs
- Track: HPC, Big Data and Data Science devroom
- Room: D.hpc
- Day: Saturday
- Start: 15:00
- End: 15:30
- Video with Q&A: D.hpc
- Video only: D.hpc
- Chat: Join the conversation!
In this talk we explore two programming models for GPU accelerated computing in a Fortran application: OpenMP with target directives and CUDA. We use an example application Riemann problem, a common problem in fluid dynamics, as our testing ground. This example application is implemented in GenASiS, a code being developed for astrophysics simulations. While OpenMP and CUDA are supported on the Summit supercomputer, its successor, an exascale supercomputer Frontier, will support OpenMP and translate CUDA-like models via HIP. In this work, we study and describe the differences and trade-offs between these programming models in terms of efforts and performance. Our hope is to provide insights on productivity and portability issues within these programming models.
Speakers
Alaina Edwards |