Numerical reproducibility for the parallel reduction on multi- and many-core architectures
•A parallel algorithm to compute correctly-rounded floating-point sums•Highly-optimized implementations for modern CPUs, GPUs and Xeon Phi•As fast as memory bandwidth allows for large sums with moderate dynamic range•Scales well with the problem size and resources used on a cluster of compute nodes...
Gespeichert in:
Veröffentlicht in: | Parallel computing 2015-11, Vol.49, p.83-97 |
---|---|
Hauptverfasser: | , , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | •A parallel algorithm to compute correctly-rounded floating-point sums•Highly-optimized implementations for modern CPUs, GPUs and Xeon Phi•As fast as memory bandwidth allows for large sums with moderate dynamic range•Scales well with the problem size and resources used on a cluster of compute nodes
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: first, a filtering stage that relies on fast vectorized floating-point expansion; second, 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 co-processors, 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. |
---|---|
ISSN: | 0167-8191 1872-7336 |
DOI: | 10.1016/j.parco.2015.09.001 |