Portability of Fortran's `do concurrent' on GPUs
Fuente:
arXiv
Gespeichert in:
| Hauptverfasser: | , , , , , , , , |
|---|---|
| Format: | Preprint |
| Veröffentlicht: |
2024
|
| Schlagworte: | |
| Online-Zugang: | |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| _version_ | 1866917878063693824 |
|---|---|
| author | Caplan, Ronald M. Stulajter, Miko M. Linker, Jon A. Larkin, Jeff Gabb, Henry A. Su, Shiquan Rodriguez, Ivan Tschirhart, Zachary Malaya, Nicholas |
| author_facet | Caplan, Ronald M. Stulajter, Miko M. Linker, Jon A. Larkin, Jeff Gabb, Henry A. Su, Shiquan Rodriguez, Ivan Tschirhart, Zachary Malaya, Nicholas |
| contents | There is a continuing interest in using standard language constructs for accelerated computing in order to avoid (sometimes vendor-specific) external APIs. For Fortran codes, the {\tt do concurrent} (DC) loop has been successfully demonstrated on the NVIDIA platform. However, support for DC on other platforms has taken longer to implement. Recently, Intel has added DC GPU offload support to its compiler, as has HPE for AMD GPUs. In this paper, we explore the current portability of using DC across GPU vendors using the in-production solar surface flux evolution code, HipFT. We discuss implementation and compilation details, including when/where using directive APIs for data movement is needed/desired compared to using a unified memory system. The performance achieved on both data center and consumer platforms is shown. |
| format | Preprint |
| id |
arxiv_https___arxiv_org_abs_2408_07843 |
| institution | arXiv |
| publishDate | 2024 |
| record_format | arxiv |
| spellingShingle | Portability of Fortran's `do concurrent' on GPUs Caplan, Ronald M. Stulajter, Miko M. Linker, Jon A. Larkin, Jeff Gabb, Henry A. Su, Shiquan Rodriguez, Ivan Tschirhart, Zachary Malaya, Nicholas Programming Languages Solar and Stellar Astrophysics Computational Engineering, Finance, and Science Mathematical Software Performance There is a continuing interest in using standard language constructs for accelerated computing in order to avoid (sometimes vendor-specific) external APIs. For Fortran codes, the {\tt do concurrent} (DC) loop has been successfully demonstrated on the NVIDIA platform. However, support for DC on other platforms has taken longer to implement. Recently, Intel has added DC GPU offload support to its compiler, as has HPE for AMD GPUs. In this paper, we explore the current portability of using DC across GPU vendors using the in-production solar surface flux evolution code, HipFT. We discuss implementation and compilation details, including when/where using directive APIs for data movement is needed/desired compared to using a unified memory system. The performance achieved on both data center and consumer platforms is shown. |
| title | Portability of Fortran's `do concurrent' on GPUs |
| topic | Programming Languages Solar and Stellar Astrophysics Computational Engineering, Finance, and Science Mathematical Software Performance |
| url | https://arxiv.org/abs/2408.07843 |