Back

Minisymposium Presentation

Same Fortran, New Performance Portability

Wednesday, June 5, 2024
13:00
-
13:30
CEST
Climate, Weather and Earth Sciences
Climate, Weather and Earth Sciences
Climate, Weather and Earth Sciences
Chemistry and Materials
Chemistry and Materials
Chemistry and Materials
Computer Science and Applied Mathematics
Computer Science and Applied Mathematics
Computer Science and Applied Mathematics
Humanities and Social Sciences
Humanities and Social Sciences
Humanities and Social Sciences
Engineering
Engineering
Engineering
Life Sciences
Life Sciences
Life Sciences
Physics
Physics
Physics

Description

Fortran is the dominant language on many supercomputers. Fortran codes are highly tuned towards CPU performance but struggle to achieve the same performance on GPUs despite their increasing adoption in supercomputers all over the world. To better support Fortran applications in HPC, we automatically translate Fortran to a flexible, data-centric representation, preserving the rich semantic information it offers. We leverage this information, along with data-centric transformations to express both functional and data parallelism and allow efficient code to be generated for both CPUs and GPUs. Using a representative code from an operational weather forecasting model as a case study, we create a perfectly data-parallel program representation and generate CPU and GPU implementations with runtimes outperforming both serial and OpenMP parallel CPU implementations as well as being on par with the best manually written versions on GPU, without changing the Fortran code.

Authors