Abstract

Abstract. Reproducibility and reliability are fundamental principles of scientific research. A compiling setup that includes a specific compiler version and compiler flags is an essential technical support for Earth system modeling. With the fast development of computer software and hardware, a compiling setup has to be updated frequently, which challenges the reproducibility and reliability of Earth system modeling. The existing results of a simulation using an original compiling setup may be irreproducible by a newer compiling setup because trivial round-off errors introduced by the change in compiling setup can potentially trigger significant changes in simulation results. Regarding the reliability, a compiler with millions of lines of code may have bugs that are easily overlooked due to the uncertainties or unknowns in Earth system modeling. To address these challenges, this study shows that different compiling setups can achieve exactly the same (bitwise identical) results in Earth system modeling, and a set of bitwise identical compiling setups of a model can be used across different compiler versions and different compiler flags. As a result, the original results can be more easily reproduced; for example, the original results with an older compiler version can be reproduced exactly with a newer compiler version. Moreover, this study shows that new test cases can be generated based on the differences of bitwise identical compiling setups between different models, which can help detect software bugs in the codes of models and compilers and finally improve the reliability of Earth system modeling.

Highlights

  • Earth system modeling simulates interactions between components of the climate system

  • An increasing number of models have sprung up all over the world, including stand-alone component models and coupled models consisting of multiple component models, such as climate system models (CSMs) and Earth system models (ESMs)

  • April 2013 13 April 2013 23 June 2015 26 June 2015 22 April 2015 piler versions and different compiler flags. They can facilitate the reproduction of original simulation results, assist researchers to determine the compiler flags for model simulations, help researchers build more test cases to detect bugs in models and compilers, and improve the reproducibility and reliability of Earth system modeling

Read more

Summary

Introduction

Earth system modeling simulates interactions between components of the climate system (e.g., atmosphere, oceans, land surface, sea ice). It has been demonstrated that with a certain compiler flag, different compiler versions can achieve bitwise identical simulation results for a given model (Liu et al, 2015a). April 2013 13 April 2013 23 June 2015 26 June 2015 22 April 2015 piler versions and different compiler flags They can facilitate the reproduction of original simulation results, assist researchers to determine the compiler flags for model simulations, help researchers build more test cases to detect bugs in models and compilers, and improve the reproducibility and reliability of Earth system modeling. -ffloat-store -fno-unsafe-math-optimizations -fno-associative-math -fno-reciprocal-math -fno-finite-math-only -fno-roundingmath -fcx-limited-range

Models and simulations
Compiling setups
Bitwise identical compiling setups of models
Methodology
The CoSFiD
Example 1
Example 2
Discussion and conclusion
Code availability
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call