Monotonicity of Multi-Term Floating-Point Adders

Mantas Mikaitis
DOI: https://doi.org/10.1109/tc.2024.3371783
IF: 3.183
2024-01-01
IEEE Transactions on Computers
Abstract:In the literature on algorithms for computing multi-term addition $s_n=\sum_{i=1}^n x_i$ in floating-point arithmetic it is often shown that a hardware unit that has single normalization and rounding improves precision, area, latency, and power consumption, compared with the use of standard add or fused multiply–add units. However, non-monotonicity can appear when computing sums with a subclass of multi-term addition units, which is currently not explored in the literature. We prove that computing multi-term floating-point addition with n ≥ 4, without normalization of intermediate quantities, can result in non-monotonicity—increasing one of the addends xi decreases the sum sn. Summation is required in dot product and matrix multiplication operations, operations that are increasingly appearing in the hardware of high-performance computers, and knowing where monotonicity is preserved can be of interest to the developers and users. Non-monotonicity of summation in existent hardware devices that implement a specific class of multi-term adders may have appeared unintentionally as a consequence of design choices that reduce circuit area and other metrics. To demonstrate our findings we simulate non-monotonic multi-term adders in MATLAB using the CPFloat custom-precision floating-point simulator.
engineering, electrical & electronic,computer science, hardware & architecture
What problem does this paper attempt to address?