The aggregation and cancellation techniques as a practical tool for faster matrix multiplication

  • Authors:
  • Igor Kaporin

  • Affiliations:
  • Computational Center of the Russian Academy of Sciences, Vavilova 40, 119991 Moscow, Russia

  • Venue:
  • Theoretical Computer Science - Algebraic and numerical algorithm
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

The main purpose of this paper is to present a fast matrix multiplication algorithm taken from the paper of Laderman et al. (Linear Algebra Appl. 162-164 (1992) 557) in a refined compact "analytical" form and to demonstrate that it can be implemented as quite efficient computer code. Our improved presentation enables us to simplify substantially the analysis of the computational complexity and numerical stability of the algorithm as well as its computer implementation. The algorithm multiplies two N × N matrices using O(N2.7760) arithmetic operations. In the case where N = 18 ċ 48k, for a positive integer k, the total number of flops required by the algorithm is 4.894N2.7760 - 16.165N2, which may be compared to a similar estimate for the Winograd algorithm, 3.732N2.8074 - 5N2 flops, N = 8 ċ 2k, the latter being current record bound among all known practical algorithms. Moreover, we present a pseudo-code of the algorithm which demonstrates its very moderate working memory requirements, much smaller than that of the best available implementations of Strassen and Winograd algorithms. For matrices of medium-large size (say, 2000 ≤ N