SEPLApr 11, 2013

The Removal of Numerical Drift from Scientific Models

arXiv:1304.3260v113 citations
Originality Incremental advance
AI Analysis

This addresses the issue of debugging complex scientific models for researchers and developers, though it is incremental as it builds on existing relative debugging techniques.

The paper tackles the problem of distinguishing between acceptable numerical drift and harmful coding or compiler errors in scientific models by introducing an automated technique for comparing program runs, which was successfully applied to the Weather Research and Forecasting model.

Computer programs often behave differently under different compilers or in different computing environments. Relative debugging is a collection of techniques by which these differences are analysed. Differences may arise because of different interpretations of errors in the code, because of bugs in the compilers or because of numerical drift, and all of these were observed in the present study. Numerical drift arises when small and acceptable differences in values computed by different systems are integrated, so that the results drift apart. This is well understood and need not degrade the validity of the program results. Coding errors and compiler bugs may degrade the results and should be removed. This paper describes a technique for the comparison of two program runs which removes numerical drift and therefore exposes coding and compiler errors. The procedure is highly automated and requires very little intervention by the user. The technique is applied to the Weather Research and Forecasting model, the most widely used weather and climate modelling code.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes