Towards an efficient implementation of CADNA in the BLAS : Example of DgemmCADNA routine

Abstract

Several approximations occur during a numerical simulation : physical phenomena are modelled using mathematical equations, continuous functions are replaced by discretized ones and real numbers are replaced by finite-precision representations (floating-point numbers). The use of the IEEE-754 arithmetic generates round-off errors at each elementary arithmetic operation. By accumulation, these errors can affect the accuracy of computed results, possibly leading to partial or total inaccuracy. The effect of these rounding errors can be analyzed and studied by some methods like forward/backard analysis, interval arithmetic or stochastic arithmetic (which is implemented in the CADNA validation tool). A numerical verification of industrial codes, such those that are developed at EDF R&D –the French provider of electricity–, is required to estimate the precision and the quality of computed results, even more for code running in HPC environments where millions instructions are performed each second. These programs usually use external libraries (MPI, BLACS, BLAS, LAPACK) [1]. In this context, it is required to have a tool as nonintrusive as possible to avoid rewriting the original code. In this regard, the CADNA library appears to be one of the promising approach for industrial applications. The CADNA library, developed by the Laboratoire d’Informatique de Paris 6, enables us to estimate round-off error propagation using a probabilistic approach in any simulation program (written in C/C++ or Fortran) and to control its numerical quality by detecting numerical instabilities that may occur at run time [2]. CADNA implements Discrete Stochastic Arithmetic which is based on a probabilistic model of round-off errors (this arithmetic is defined with the CESTAC Method). CADNA

Cite this paper

@inproceedings{Montan2012TowardsAE, title={Towards an efficient implementation of CADNA in the BLAS : Example of DgemmCADNA routine}, author={S{\'e}thy Montan and Jean-Marie Chesneaux and Christophe Denis and Jean-Luc Lamotte}, year={2012} }