Skip to Main content Skip to Navigation
Preprints, Working Papers, ...

Reproducibility of Parallel Preconditioned Conjugate Gradient in Hybrid Programming Environments

Abstract : The Preconditioned Conjugate Gradient method is often employed for the solution of linear systems of equations arising in numerical simulations of physical phenomena. While being widely used, the solver is also known for its lack of accuracy while computing the residual. In this article, we propose two algorithmic solutions that originate from the ExBLAS project to enhance the accuracy of the solver as well as to ensure its reproducibility in a hybrid MPI + OpenMP tasks programming environment. One is based on ExBLAS and preserves every bit of information until the final rounding, while the other relies upon floating-point expansions and, hence, expands the intermediate precision. Instead of converting the entire solver into its ExBLAS-related implementation, we identify those parts that violate reproducibility/non-associativity, secure them, and combine this with the sequential executions. These algorithmic strategies are reinforced with programmability suggestions to assure deterministic executions. Finally, we verify these approaches on two modern HPC systems: both versions deliver reproducible number of iterations, residuals, direct errors, and vector-solutions for the overhead of less than 37.7 % on 768 cores.
Complete list of metadata

Cited literature [41 references]  Display  Hide  Download
Contributor : Roman Iakymchuk Connect in order to contact the contributor
Submitted on : Thursday, April 30, 2020 - 4:39:55 PM
Last modification on : Sunday, June 26, 2022 - 2:49:29 AM


Files produced by the author(s)


  • HAL Id : hal-02427795, version 2


Roman Iakymchuk, Maria Barreda, Stef Graillat, José I Aliaga, Enrique S Quintana-Ortí. Reproducibility of Parallel Preconditioned Conjugate Gradient in Hybrid Programming Environments. 2020. ⟨hal-02427795v2⟩



Record views


Files downloads