P33 - Optimizing Data Offload in the IFS Using GPU-Aware Data Structures and Source-To-Source Translation
Description
The adaptation of the ECMWF’s medium-range forecasting model, the Integrated Forecasting System (IFS), to heterogeneous computing architectures is an ongoing effort. The IFS consists of millions of lines of Fortran code that is highly optimized for modern CPUs. This poses significant challenges when porting the code to heterogeneous architectures, as data layouts and compute patterns need to be changed to efficiently utilise the hardware. To solve this problem, at ECMWF, we use FIELD API, a GPU-aware data-structure library and Loki, a freely programmable source-to-source translationtoolchain written in Python, to generate architecture specific optimised code. In this poster, we show how FIELD API and Loki can be used to generate efficient code for asynchronously offloading data to GPUs. We use “dwarf-cloudsc”, a computationally representative proxy of the IFS physics, to demonstrate the application of Loki to generate two versions of OpenACC accelerated Fortran. One version, that offloads all Fields over the same stream and a second version that blocks the offload of fields over multiple streams and overlaps computation and communication. We provide a comparison of the performance of the three versions showing promising results for the offload of the full IFS to GPUs.
Presenter(s)

Presenter
Computational Scientist in the Research Department at ECMWF working on the GPU adaptation of the IFS for Destination Earth.

Presenter
I work as a computational scientist at ECMWF. The main focus of my work is the GPU adaptation of the physical parameterizations in the integrated forecasting system (IFS). Source-to-source translation is a key component of ECMWF's GPU adaptation strategy, and I am one of the core developers of Loki, ECMWF's in-house source-to-source translation tool. Previously, I have also worked on improving the vectorizability of HYDRA, the production computational fluid dynamics code of Rolls-Royce plc.