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.