Using Accurate Arithmetics to Improve Numerical Reproducibility and Stability in Parallel Applications

  • Authors:
  • Yun He;Chris H. Q. Ding

  • Affiliations:
  • NERSC Division, Lawrence Berkeley National Laboratory, University of California, Berkeley, CA 94720, USA YHe@lbl.gov;NERSC Division, Lawrence Berkeley National Laboratory, University of California, Berkeley, CA 94720, USA CHQDing@lbl.gov

  • Venue:
  • The Journal of Supercomputing
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

Numerical reproducibility and stability of large scale scientific simulations, especially climate modeling, on distributed memory parallel computers are becoming critical issues. In particular, global summation of distributed arrays is most susceptible to rounding errors, and their propagation and accumulation cause uncertainty in final simulation results. We analyzed several accurate summation methods and found that two methods are particularly effective to improve (ensure) reproducibility and stability: Kahan's self-compensated summation and Bailey's double-double precision summation. We provide an MPI operator MPI_SUMDD to work with MPI collective operations to ensure a scalable implementation on large number of processors. The final methods are particularly simple to adopt in practical codes: not only global summations, but also vector-vector dot products and matrix-vector or matrix-matrix operations.