Many-core architectures and accelerators and are becoming commonplace on the Top500 so it is safe to say such specialized architectures, driven by the limits imposed by the slow down in Moore’s Law, are here to stay in scientific computing. For weather and climate modeling, this increased architectural complexity together with the widespread use of Fortran has slowed scientific productivity.
One way to tackle these challenges is by increasing the level of abstraction, thereby allowing a compiler to generate efficient code for these architectures. Since weather models are primarily comprised of stencil operations, complicated operations which are critical to performance such as loop fusion and data locality may be optimized by a compiler automatically.
This talk will discuss the development of such a domain-specific language (DSL) compiler toolchain for weather and climate models developed together by MeteoSwiss, ETHZ, CSCS, and Vulcan. Specifically, we will discuss the extension and application of the DSL compiler toolchain to the FV3 dynamical core.