title = {{Confidence Intervals for Stochastic Arithmetic}},
  author = {Sohier, Devan and de Oliveira Castro, Pablo and F{\'e}votte, Fran{\c c}ois and Lathuili{\`e}re, Bruno and Petit, Eric and Jamond, Olivier},
  url = {},
  note = {preprint},
  year = {2018},
  month = jul,
  abstract = {
    Quantifying errors and losses due to the use of Floating-Point (FP) calculations in industrial scientific computing codes is an important part of the Verification, Validation and Uncertainty Quantification (VVUQ) process. Stochastic Arithmetic is one way to model and estimate FP losses of accuracy, which scales well to large, industrial codes. It exists in different flavors, such as CESTAC or MCA, implemented in various tools such as CADNA, Verificarlo or Verrou. These methodologies and tools are based on the idea that FP losses of accuracy can be modeled via randomness. Therefore, they share the same need to perform a statistical analysis of programs results in order to estimate the significance of the results. In this paper, we propose a framework to perform a solid statistical analysis of Stochastic Arithmetic. This framework unifies all existing definitions of the number of significant digits (CESTAC and MCA), and also proposes a new quantity of interest: the number of digits contributing to the accuracy of the results. Sound confidence intervals are provided for all estimators, both in the case of normally distributed results, and in the general case. The use of this framework is demonstrated by two case studies of large, industrial codes: Europlexus and code_aster.
  pdf = {}
  author = {Yohan Chatelain and
             Pablo de Oliveira Castro and
             Eric Petit and
             David Defour and
             Jordan Bieder and
             Marc Torrent},
  title = {{VeriTracer: Context-enriched tracer for floating-point arithmetic analysis}},
  booktitle = {25th {IEEE} Symposium on Computer Arithmetic, {ARITH} 2018, Amherst, MA, USA. June 25th-27th, 2018},
  pages = {65--72},
  publisher = {IEEE},
  year = {2018},
  abstract = {VeriTracer automatically instruments a code and
    traces the accuracy of floating-point variables over
    time. VeriTracer enriches the visual traces with contextual
    information such as the call site path in which
    a value was modified. Contextual information is important
    to understand how the floating-point errors
    propagate in complex codes. VeriTracer is implemented
    as an LLVM compiler tool on top of Verificarlo.
    We demonstrate how VeriTracer can detect accuracy
    loss and quantify the impact of using a compensated
    algorithm on ABINIT, an industrial HPC application
    for Ab Initio quantum computation.},
  pdf = {arith2018veritracer.pdf},
  documenturl = {arith2018slides.pdf}
  author = {Christophe Denis and
             Pablo de Oliveira Castro and
             Eric Petit},
  title = {Verificarlo: Checking Floating Point Accuracy through Monte Carlo
  booktitle = {23nd {IEEE} Symposium on Computer Arithmetic, {ARITH} 2016, Silicon
             Valley, CA, USA, July 10-13, 2016},
  pages = {55--62},
  year = {2016},
  url = {},
  doi = {10.1109/ARITH.2016.31},
  abstract = {Numerical accuracy of floating point computation is a well studied topic which has not made its way to the end-user in scientific computing. Yet, it has become a critical issue with the recent requirements for code modernization to harness new highly parallel hardware and perform higher resolution computation. To democratize numerical accuracy analysis, it is important to propose tools and methodologies to study large use cases in a reliable and automatic way. In this paper, we propose verificarlo, an extension to the LLVM compiler to automatically use Monte Carlo Arithmetic in a transparent way for the end-user. It supports all the major languages including C, C++, and Fortran. Unlike source-to-source approaches, our implementation captures the influence of compiler optimizations on the numerical accuracy. We illustrate how Monte Carlo Arithmetic using the verificarlo tool outperforms the existing approaches on various use cases and is a step toward automatic numerical analysis.},
  pdf = {}