Issue No. 04 - April (1996 vol. 45)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/12.494099
<p><b>Abstract</b>—A system-level method for achieving fault tolerance called algorithm-based fault tolerance (ABFT) has been proposed by a number of researchers. Many ABFT schemes use a floating-point checksum test to detect computation errors resulting from hardware faults. This makes the tests susceptible to roundoff inaccuracies in floating-point operations, which either cause false alarms or lead to undetected errors. Thresholding of the equality test has been commonly used to avoid false alarms; however, a good threshold that minimizes false alarms without reducing the error coverage significantly is difficult to find, especially when not much is known about the input data. Furthermore, thresholded checksums will inevitably miss lower-bit errors, which can get magnified as a computation such as <b>LU</b> decomposition progresses. Here we develop a theory for applying integer mantissa checksum tests to "mantissa-preserving" floating-point computations. This test is not susceptible to roundoff problems and yields 100% error coverage without false alarms. For computations that are not fully mantissa-preserving, we show how to apply the mantissa checksum test to the mantissa-preserving components of the computation and the floating-point test to the rest of the computation. We apply this general methodology to matrix-matrix multiplication and <b>LU</b> decomposition (using the Gaussian elimination (GE) algorithm), and find that the accuracy of this new "hybrid" testing scheme is substantially higher than the floating-point test with thresholding, and also that its time overhead with respect to the floating-point test is nominal (15% and 9.5% on the average for matrix multiplication and <b>LU</b> decomposition, respectively). The hybrid test can also be easily applied to other computations like matrix inversion that use the GE algorithm. We prove that the mantissa-based integer checksum test for both matrix multiplication and <b>LU</b> decomposition is able to detect at least three errors in the floating-point multiplication component of these computations. For <b>LU</b> decomposition, it is also able to correct a single error in the floating-point multiplies.</p>
Algorithm-based fault tolerance, floating-point checksum test, hybrid checksum test, mantissa checksum test, mantissa-preserving operations, matrix multiplication, LU decomposition, roundoff errors, thresholding.
S. Dutt and F. T. Assaad, "Mantissa-Preserving Operations and Robust Algorithm-Based Fault Tolerance for Matrix Computations," in IEEE Transactions on Computers, vol. 45, no. , pp. 408-424, 1996.