Abstract
With the widespread use of graphic processing units (GPUs) from different vendors in oil and gas companies, it has become increasingly important to achieve code portability. This allows for evaluating performance across diverse GPU vendors, enabling informed decisions. This capability enables companies to assess hardware solutions based on cost, performance, or energy efficiency, promoting competition and potentially driving innovation and cost reduction in GPU technologies. With that in mind, we address the challenge of achieving performance portability for Fletcher, an anisotropic wave propagation modeling application across various GPU architectures from NVIDIA and AMD. Hence, our first contribution is the parallel implementation of Fletcher on GPUs using eleven variations of portable programming models, including HIP, CUDA, Kokkos, RAJA, and OpenMP Target. Our second contribution is a comprehensive evaluation of these implementations across five generations of GPU from NVIDIA and AMD, assessing performance, performance-portability, and power-performance efficiency. Through an extensive set of experiments, we demonstrate that HIP outperforms the assessed programming models in terms of performance portability across all evaluated GPUs. Specifically, it performs 7.9% better than Kokkos, 8.8% better than RAJA, and 67.8% better than OpenMP Target. We also show that while the automatic translation of CUDA to HIP code allows for execution on AMD GPUs, optimizing for high performance is necessary. Additionally, we show that the programming models' impact on Fletcher's performance is heavily influenced by the size of the GPU's L2 cache, especially given that this is a memory-intensive application.
| Original language | English |
|---|---|
| Title of host publication | Proceedings - 2024 IEEE 36th International Symposium on Computer Architecture and High-Performance Computing, SBAC-PAD 2024 |
| Publisher | IEEE Computer Society |
| Pages | 127-137 |
| Number of pages | 11 |
| ISBN (Electronic) | 9798350356168 |
| DOIs | |
| State | Published - 2024 |
| Event | 36th IEEE International Symposium on Computer Architecture and High-Performance Computing, SBAC-PAD 2024 - Hilo, United States Duration: Nov 13 2024 → Nov 15 2024 |
Publication series
| Name | Proceedings - Symposium on Computer Architecture and High Performance Computing |
|---|---|
| ISSN (Print) | 1550-6533 |
Conference
| Conference | 36th IEEE International Symposium on Computer Architecture and High-Performance Computing, SBAC-PAD 2024 |
|---|---|
| Country/Territory | United States |
| City | Hilo |
| Period | 11/13/24 → 11/15/24 |
Funding
The authors would like to thank the following projects and partnerships: PCAD; GRID5000; Petrobras Project n 2020/00182-5; CNPq/MCTI/FNDCT - Universal 18/2021 n 406182/2021-3; Capes Finance Code 001. This research used resources of the Oak Ridge Leadership Computing Facility at the Oak Ridge National Laboratory, which is supported by the Office of Science of the U.S. Department of Energy under Contract No. DE-AC05-00OR22725.
Keywords
- GPU
- Oil and Gas application
- Performance Portability
- Power efficiency