Automatic Port to OpenACC/OpenMP for Physical Parameterization in Climate and Weather Code Using the CLAW Compiler
Author(s) -
Valentin Clément,
Philippe Marti,
Xavier Lapillonne,
Oliver Fuhrer,
William H. Sawyer
Publication year - 2019
Publication title -
supercomputing frontiers and innovations
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.375
H-Index - 16
eISSN - 2409-6008
pISSN - 2313-8734
DOI - 10.14529/jsfi190303
Subject(s) - porting , computer science , compiler , code generation , fortran , parallel computing , code (set theory) , programming language , operating system , software , set (abstract data type) , key (lock)
In order to benefit from emerging high-performance computing systems, weather and climate models need to be adapted to run efficiently on different hardware architectures such as accelerators. This is a major challenge for existing community models that represent extremely large codebase written in Fortran. Large parts of the code can be ported using OpenACC compiler directives but for time-critical components such as physical parameterizations, code restructuring and optimizations specific to a hardware architecture are necessary to obtain high performance. In an effort to retain a single source code for multiple target architectures, the CLAW Compiler and the CLAW Single Column Abstraction were introduced. We report on the extension of the CLAW SCA to handle ELEMENTAL functions and subroutines. We demonstrate the new capability on the JSBACH land surface scheme of the ICON climate model. With the extension, JSBACH can be automatically ported to OpenACC or OpenMP for accelerators with minimal to no change to the original code.
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom