A023-07
LFRic and PSyclone: Utilising DSLs for Performance Portability

Monday, 7 December 2020: 18:12
Virtual
Iva Kavcic, Exeter, England, United Kingdom
Abstract:
LFRic is the new weather and climate modelling system being developed by the UK Met Office to replace the existing Unified Model in preparation for exascale computing in the 2020s. LFRic uses the GungHo dynamical core and runs on a semi-structured cubed-sphere mesh.

The design of the supporting infrastructure follows object-oriented principles to facilitate modularity and the use of external libraries. One of the guiding design principles, imposed to promote performance portability, is “separation of concerns” between the science and parallel code.

Parallel code in LFRic is generated by PSyclone with the support of LFRic infrastructure, which provides APIs to support the distributed memory parallelism via libraries such as YAXT. PSyclone provides general (e.g. shared memory parallelism using OpenMP) as well as LFRic-specific optimisations. For example, PSyclone can enhance the use of distributed memory parallelism in LFRic using optimisations such as asynchronous halo exchange and redundant computation to reduce the need for halo exchanges. The talk will give more examples of the impact of PSyclone on the LFRic performance.