Memory efficient scheduling of Strassen-Winograd's matrix multiplication algorithm
Brice Boyer (LJK), Jean-Guillaume Dumas (LJK), Cl\'ement Pernet (INRIA, Rh\^one-Alpes / LIG Laboratoire d'Informatique de Grenoble), Wei Zhou, (Symbolic Computation Group)

TL;DR
This paper introduces new memory-efficient schedules for Strassen-Winograd's matrix multiplication, reducing memory needs through pre-additions, overwriting inputs, or recursive classical multiplication, including two fully in-place methods.
Contribution
The paper presents novel in-place and memory-efficient scheduling strategies for Strassen-Winograd's algorithm, developed via an exhaustive search approach.
Findings
Two fully in-place schedules demonstrated
Memory requirements reduced by three means
Implementation used pebble game-based search
Abstract
We propose several new schedules for Strassen-Winograd's matrix multiplication algorithm, they reduce the extra memory allocation requirements by three different means: by introducing a few pre-additions, by overwriting the input matrices, or by using a first recursive level of classical multiplication. In particular, we show two fully in-place schedules: one having the same number of operations, if the input matrices can be overwritten; the other one, slightly increasing the constant of the leading term of the complexity, if the input matrices are read-only. Many of these schedules have been found by an implementation of an exhaustive search algorithm based on a pebble game.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Complexity and Algorithms in Graphs · Polynomial and algebraic computation
