Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Improving the Numerical Stability of Fast Matrix Multiplication

Journal Article · · SIAM Journal on Matrix Analysis and Applications
DOI:https://doi.org/10.1137/15M1032168· OSTI ID:1356986
 [1];  [2];  [3];  [4];  [5]
  1. Sandia National Lab. (SNL-CA), Livermore, CA (United States); Wake Forest Univ., Winston-Salem, NC (United States)
  2. Stanford Univ., CA (United States). Inst. for Computational and Mathematical Engineering
  3. Lawrence Berkeley National Lab. (LBNL), Berkeley, CA (United States)
  4. Google, San Bruno, CA (United States)
  5. Hebrew Univ. of Jerusalem (Israel). School of Computer Science and Engineering

Fast algorithms for matrix multiplication, namely those that perform asymptotically fewer scalar operations than the classical algorithm, have been considered primarily of theoretical interest. Apart from Strassen's original algorithm, few fast algorithms have been efficiently implemented or used in practical applications. However, there exist many practical alternatives to Strassen's algorithm with varying performance and numerical properties. Fast algorithms are known to be numerically stable, but because their error bounds are slightly weaker than the classical algorithm, they are not used even in cases where they provide a performance benefit. We argue in this study that the numerical sacrifice of fast algorithms, particularly for the typical use cases of practical algorithms, is not prohibitive, and we explore ways to improve the accuracy both theoretically and empirically. The numerical accuracy of fast matrix multiplication depends on properties of the algorithm and of the input matrices, and we consider both contributions independently. We generalize and tighten previous error analyses of fast algorithms and compare their properties. We discuss algorithmic techniques for improving the error guarantees from two perspectives: manipulating the algorithms, and reducing input anomalies by various forms of diagonal scaling. In conclusion, we benchmark performance and demonstrate our improved numerical accuracy.

Research Organization:
Hebrew Univ. of Jerusalem (Israel); Sandia National Lab. (SNL-CA), Livermore, CA (United States); Lawrence Berkeley National Lab. (LBNL), Berkeley, CA (United States)
Sponsoring Organization:
USDOE Office of Science (SC), Advanced Scientific Computing Research (ASCR) (SC-21); USDOE National Nuclear Security Administration (NNSA); Israel Science Foundation (ISF); Ministry of Science and Technology (Israel); Einstein Foundation; Minerva Foundation (United States); Intel Collaborative Research Inst. for Computational Intelligence (ICRI-CI) (Israel); United States-Israel Binational Science Foundation (BSF); HUJI Cyber Security Research Center (Israel); Israel National Cyber Bureau
Grant/Contract Number:
AC04-94AL85000; AC02-05CH11231
OSTI ID:
1356986
Alternate ID(s):
OSTI ID: 1458476
Report Number(s):
SAND2015--5246J; 594464
Journal Information:
SIAM Journal on Matrix Analysis and Applications, Journal Name: SIAM Journal on Matrix Analysis and Applications Journal Issue: 4 Vol. 37; ISSN 0895-4798
Publisher:
SIAMCopyright Statement
Country of Publication:
United States
Language:
English

References (15)

A practical algorithm for faster matrix multiplication journal December 1999
Stability of fast algorithms for matrix multiplication journal March 1980
Gaussian elimination is not optimal journal August 1969
Error analysis of algorithms for matrix multiplication and triangular decomposition using Winograd's identity journal November 1970
Fast matrix multiplication is stable journal February 2007
Fast linear algebra is stable journal October 2007
Improving and estimating the accuracy of Strassen's algorithm journal June 1998
On the complexity of the multiplication of matrices of small formats journal February 2003
The aggregation and cancellation techniques as a practical tool for faster matrix multiplication journal May 2004
The vec-permutation matrix, the vec operator and Kronecker products: a review journal January 1981
The bilinear complexity and practical algorithms for matrix multiplication journal December 2013
Computational Complexity and Numerical Stability journal June 1975
Noncommutative Bilinear Algorithms for $3 \times 3$ Matrix Multiplication journal May 1986
New Lower Bounds for the Rank of Matrix Multiplication journal January 2014
The Better Accuracy of Strassen-Winograd Algorithms (FastMMW) journal January 2014

Cited By (1)

Investigating Bayesian Optimization for rail network optimization journal October 2019

Similar Records

A Tensor Product Formulation of Strassen′s Matrix Multiplication Algorithm with Memory Reduction
Journal Article · Mon Apr 17 00:00:00 EDT 1995 · Scientific Programming · OSTI ID:1198030

Using Strassen's algorithm to accelerate the solution of linear systems
Journal Article · Sun Dec 31 23:00:00 EST 1989 · Journal of Supercomputing; (United States) · OSTI ID:6689180