SAM++: Porting the E3SM-MMF cloud resolving model using a C++ portability library

Research output: Contribution to journalArticlepeer-review

1 Scopus citations

Abstract

In this work, we demonstrate the process for porting the cloud resolving model (CRM) used in the Energy Exascale Earth System Model Multi-Scale Modeling Framework (E3SM-MMF) from its original Fortran code base to C++ code using a portability library. This porting process is performed using the Yet Another Kernel Library (YAKL), a simplified C++ portability library that specializes in Fortran porting. In particular, we detail our step-by-step approach for porting the System for Atmospheric Modeling (SAM), the CRM used in E3SM-MMF, using a hybrid Fortran/C++ framework that allows for systematic reproduction and correctness testing of gradually ported YAKL C++ code. Additionally, analysis is done on the performance of the ported code using OLCF’s Summit supercomputer.

Original languageEnglish
Pages (from-to)214-230
Number of pages17
JournalInternational Journal of High Performance Computing Applications
Volume36
Issue number2
DOIs
StatePublished - Mar 2022

Funding

The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This research was supported by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of the U.S. Department of Energy Office of Science and the National Nuclear Security Administration. This research used resources of the Oak Ridge Leadership Computing Facility, which is a DOE Office of Science User Facility supported under contract DE-AC05-00OR22725.

FundersFunder number
U.S. Department of Energy
Office of Science17-SC-20-SC, DE-AC05-00OR22725
National Nuclear Security Administration

    Keywords

    • Accelerator Computing
    • C++
    • C++/Fortran Interoperability
    • Cloud Resolving Model
    • Portability

    Fingerprint

    Dive into the research topics of 'SAM++: Porting the E3SM-MMF cloud resolving model using a C++ portability library'. Together they form a unique fingerprint.

    Cite this