Error-free transformations of matrix multiplication by using fast routines of matrix multiplication and its applications

Katsuhisa Ozaki*, Takeshi Ogita, Shin'ichi Oishi, Siegfried M. Rump

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

32 Citations (Scopus)


This paper is concerned with accurate matrix multiplication in floating-point arithmetic. Recently, an accurate summation algorithm was developed by Rump et al. (SIAM J Sci Comput 31(1):189-224, 2008). The key technique of their method is a fast error-free splitting of floating-point numbers. Using this technique, we first develop an error-free transformation of a product of two floating-point matrices into a sum of floating-point matrices. Next, we partially apply this error-free transformation and develop an algorithm which aims to output an accurate approximation of the matrix product. In addition, an a priori error estimate is given. It is a characteristic of the proposed method that in terms of computation as well as in terms of memory consumption, the dominant part of our algorithm is constituted by ordinary floating-point matrix multiplications. The routine for matrix multiplication is highly optimized using BLAS, so that our algorithms show a good computational performance. Although our algorithms require a significant amount of working memory, they are significantly faster than 'gemmx' in XBLAS when all sizes of matrices are large enough to realize nearly peak performance of 'gemm'. Numerical examples illustrate the efficiency of the proposed method.

Original languageEnglish
Pages (from-to)95-118
Number of pages24
JournalNumerical Algorithms
Issue number1
Publication statusPublished - 2012 Jan


  • Accurate computations
  • Error-free transformation
  • Floating-point arithmetic
  • Matrix multiplication

ASJC Scopus subject areas

  • Applied Mathematics


Dive into the research topics of 'Error-free transformations of matrix multiplication by using fast routines of matrix multiplication and its applications'. Together they form a unique fingerprint.

Cite this