Abstract

Differences in simulation results may be observed from one architecture to another or even inside the same architecture. Such reproducibility failures are often due to different rounding errors generated by different orders in the sequence of arithmetic operations. Reproducibility problems are particularly noticeable on new computing architectures such as multicore processors or GPUs (Graphics Processing Units). DSA (Discrete Stochastic Arithmetic) enables one to estimate rounding error propagation in simulation programs. In this paper, it is shown that DSA can be used to estimate which digits in simulation results may be different from one environment to another because of rounding errors. A particular implementation of DSA, which enables numerical validation in hybrid CPU-GPU environments, is described. The estimation of numerical reproducibility using DSA is illustrated by a wave propagation code which can be affected by reproducibility problems when executed on different architectures.

Highlights

  • R ESULTS of numerical simulations may be different from one architecture to another, or even inside the same architecture if they are computed using different compilers for instance

  • We have shown that DISCRETE STOCHASTIC ARITHMETIC (DSA) can provide an estimation of the reproducibility of numerical programs

  • By estimating which digits are affected by rounding errors, DSA may explain why differences are observed in the results of a program executed in different environments

Read more

Summary

INTRODUCTION

R ESULTS of numerical simulations may be different from one architecture to another, or even inside the same architecture if they are computed using different compilers for instance. This paper shows that DSA can be used, not to force a code to be reproducible, but to estimate the number of digits in the results which may be different from one execution to another because of rounding errors. This paper describes a version of CADNA, briefly introduced in [18], that can be used in hybrid CPU-GPU environments to estimate rounding errors in CUDA programs.

REPRODUCIBILITY FAILURES IN A WAVE PROPAGATION
Principles of DSA
Numerical validation of sequential codes using DSA
Numerical validation of hybrid CPU-GPU codes using DSA
ESTIMATION OF REPRODUCIBILITY IN WAVE PROPAGATION RESULTS BY MEANS OF DSA
CONCLUSION

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.