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

Accurate and Efficiently Vectorized Sums and Dot Products in Julia

Abstract : This paper presents an efficient, vectorized implementation of various summation and dot product algorithms in the Julia programming language. These implementations are available under an open source license in the AccurateArithmetic.jl Julia package. Besides naive algorithms, compensated algorithms are implemented: the Kahan-Babuška-Neumaier summation algorithm, and the Ogita-Rump-Oishi simply compensated summation and dot product algorithms. These algorithms effectively double the working precision, producing much more accurate results while incurring little to no overhead, especially for large input vectors. This paper also tries and builds upon this example to make a case for a more widespread use of Julia in the HPC community. Although the vectorization of compensated algorithms is no particularly simple task, Julia makes it relatively easy and straightforward. It also allows structuring the code in small, composable building blocks, closely matching textbook algorithms yet efficiently compiled.
Document type :
Preprints, Working Papers, ...
Complete list of metadata

Cited literature [13 references]  Display  Hide  Download
Contributor : François Févotte Connect in order to contact the contributor
Submitted on : Wednesday, August 21, 2019 - 12:29:25 AM
Last modification on : Wednesday, November 3, 2021 - 8:09:45 AM
Long-term archiving on: : Sunday, January 12, 2020 - 1:11:14 AM


Files produced by the author(s)


  • HAL Id : hal-02265534, version 3


Chris Elrod, François Févotte. Accurate and Efficiently Vectorized Sums and Dot Products in Julia. 2019. ⟨hal-02265534v3⟩



Record views


Files downloads