Reproducible and Accurate Matrix Multiplication for GPU Accelerators

Abstract : Due to non-associativity of floating-point operations and dynamic scheduling on parallel architectures, getting a bitwise reproducible floating-point result for multiple executions of the same code on different or even similar parallel architectures is challenging. In this paper, we address the problem of reproducibility in the context of matrix multiplication and propose an algorithm that yields both reproducible and accurate results. This algorithm is composed of two main stages: a filtering stage that uses fast vectorized floating-point expansions in con-junction with error-free transformations; an accumulation stage based on Kulisch long accumulators in a high-radix carry-save representation. Finally, we provide implementations and performance results in parallel environments like GPUs.
Liste complète des métadonnées

Cited literature [21 references]  Display  Hide  Download
Contributor : Roman Iakymchuk <>
Submitted on : Tuesday, January 13, 2015 - 4:14:27 PM
Last modification on : Thursday, March 21, 2019 - 1:06:18 PM
Document(s) archivé(s) le : Tuesday, April 14, 2015 - 11:16:21 AM


Files produced by the author(s)


  • HAL Id : hal-01102877, version 1


Roman Iakymchuk, David Defour, Sylvain Collange, Stef Graillat. Reproducible and Accurate Matrix Multiplication for GPU Accelerators. 2015. ⟨hal-01102877⟩



Record views


Files downloads