Dahm, Johann P., Eddie C Davis, Florian Deconinck, Oliver Elbert, Rhea C George, Jeremy McGibbon, Tobias Wicky, Elynn Wu, Christopher Kung, Tal Ben-Nun, Lucas Harris, Linus Groner, and Oliver Fuhrer, May 2023: Pace v0.2: a Python-based performance-portable atmospheric model. Geoscientific Model Development, 16(9), DOI:10.5194/gmd-16-2719-20232719-2736. Abstract
Progress in leveraging current and emerging high-performance computing infrastructures using traditional weather and climate models has been slow. This has become known more broadly as the software productivity gap. With the end of Moore's law driving forward rapid specialization of hardware architectures, building simulation codes on a low-level language with hardware-specific optimizations is a significant risk. As a solution, we present Pace, an implementation of the nonhydrostatic FV3 dynamical core and GFDL cloud microphysics scheme which is entirely Python-based. In order to achieve high performance on a diverse set of hardware architectures, Pace is written using the GT4Py domain-specific language. We demonstrate that with this approach we can achieve portability and performance, while significantly improving the readability and maintainability of the code as compared to the Fortran reference implementation. We show that Pace can run at scale on leadership-class supercomputers and achieve performance speeds 3.5–4 times faster than the Fortran code on GPU-accelerated supercomputers. Furthermore, we demonstrate how a Python-based simulation code facilitates existing or enables entirely new use cases and workflows. Pace demonstrates how a high-level language can insulate us from disruptive changes, provide a more productive development environment, and facilitate the integration with new technologies such as machine learning.
McGibbon, Jeremy, Noah D Brenowitz, Mark Cheeseman, Spencer K Clark, Johann P S Dahm, Eddie C Davis, Oliver Elbert, Rhea C George, and Lucas Harris, et al., July 2021: fv3gfs-wrapper: A Python wrapper of the FV3GFS atmospheric model. Geoscientific Model Development, 14(7), DOI:10.5194/gmd-14-4401-20214401-4409. Abstract
Simulation software in geophysics is traditionally written in Fortran or C++ due to the stringent performance requirements these codes have to satisfy. As a result, researchers who use high-productivity languages for exploratory work often find these codes hard to understand, hard to modify, and hard to integrate with their analysis tools. fv3gfs-wrapper is an open-source Python-wrapped version of the NOAA (National Oceanic and Atmospheric Administration) FV3GFS (Finite-Volume Cubed-Sphere Global Forecast System) global atmospheric model, which is coded in Fortran. The wrapper provides simple interfaces to progress the Fortran main loop and get or set variables used by the Fortran model. These interfaces enable a wide range of use cases such as modifying the behavior of the model, introducing online analysis code, or saving model variables and reading forcings directly to and from cloud storage. Model performance is identical to the fully compiled Fortran model, unless routines to copy the state in and out of the model are used. This copy overhead is well within an acceptable range of performance and could be avoided with modifications to the Fortran source code. The wrapping approach is outlined and can be applied similarly in other Fortran models to enable more productive scientific workflows.
We present the System for High‐resolution prediction on Earth‐to‐Local Domains (SHiELD), an atmosphere model developed by the Geophysical Fluid Dynamics Laboratory (GFDL) coupling the nonhydrostatic FV3 Dynamical Core to a physics suite originally taken from the Global Forecast System. SHiELD is designed to demonstrate new capabilities within its components, explore new model applications, and to answer scientific questions through these new functionalities. A variety of configurations are presented, including short‐to‐medium‐range and subseasonal‐to‐seasonal prediction, global‐to‐regional convective‐scale hurricane and contiguous U.S. precipitation forecasts, and global cloud‐resolving modeling. Advances within SHiELD can be seamlessly transitioned into other Unified Forecast System or FV3‐based models, including operational implementations of the Unified Forecast System. Continued development of SHiELD has shown improvement upon existing models. The flagship 13‐km SHiELD demonstrates steadily improved large‐scale prediction skill and precipitation prediction skill. SHiELD and the coarser‐resolution S‐SHiELD demonstrate a superior diurnal cycle compared to existing climate models; the latter also demonstrates 28 days of useful prediction skill for the Madden‐Julian Oscillation. The global‐to‐regional nested configurations T‐SHiELD (tropical Atlantic) and C‐SHiELD (contiguous United States) show significant improvement in hurricane structure from a new tracer advection scheme and promise for medium‐range prediction of convective storms.