Relative debugging

Abstract
Because large scientific codes are rarely static objects, developers are often faced with the tedious task of accounting for discrepancies between new and old versions. This paper describes a new technique called relative debugging that addresses this problem by automating the process of comparing a modified code against a correct reference code. The paper examines the utility of the relative debugging technique by applying a relative debugger called Guard to a range of debugging problems in a large atmospheric circulation model. The experience confirms the effectiveness of the approach. Using Guard, it was possible to validate a new sequential version of the atmospheric model, and to identify the source of a significant discrepancy in a parallel version in a short period of time.

This publication has 5 references indexed in Scilit: