A Fast Dot-Product Algorithm with Minimal Rounding Errors

Computing 52 (1994), Springer-Verlag, pp. 355-369

We present a new algorithm which computes dot-products of arbitrary length with minimal rounding errors, independent of the number of addends. The algorithm has an O(n) time and O(1) memory complexity and does not need extensions of the arithmetic kernel, i.e., usual floating-point operations. A slight modification yields an algorithm which computes the dot-product in machine precision. Due to its simplicity, the algorithm can easily be implemented in hardware.

Downloads:
Paper
Source Code