Numerical Reproducibility for the Parallel Reduction on Multi- and Many-Core Architectures

Abstract : On modern multi-core, many-core, and heterogeneous architectures, floating-point computations, especially reductions, may become non-deterministic and, therefore, non-reproducible mainly due to the non-associativity of floating-point operations. We introduce an approach to compute the correctly rounded sums of large floating-point vectors accurately and efficiently, achieving deterministic results by construction. Our multi-level algorithm consists of two main stages: a filtering stage that relies on fast vectorized floating-point expansions, and an accumulation stage based on superaccumulators in a high-radix carry-save representation. We present implementations on recent Intel desktop and server processors, Intel Xeon Phi accelerators, and both AMD and NVIDIA GPUs. We show that numerical reproducibility and bit-perfect accuracy can be achieved at no additional cost for large sums that have dynamic ranges of up to 90 orders of magnitude by leveraging arithmetic units that are left underused by standard reduction algorithms.
Liste complète des métadonnées

Cited literature [30 references]  Display  Hide  Download

https://hal.archives-ouvertes.fr/hal-00949355
Contributor : Roman Iakymchuk <>
Submitted on : Thursday, September 10, 2015 - 3:49:43 PM
Last modification on : Thursday, March 21, 2019 - 1:07:43 PM
Document(s) archivé(s) le : Tuesday, December 29, 2015 - 12:05:21 AM

File

superaccumulator.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-00949355, version 4

Citation

Sylvain Collange, David Defour, Stef Graillat, Roman Iakymchuk. Numerical Reproducibility for the Parallel Reduction on Multi- and Many-Core Architectures. 2015. ⟨hal-00949355v4⟩

Share

Metrics

Record views

1570

Files downloads

759