On Parallelizing Matrix Multiplication by the Column-Row Method
Andrea Campagna, Konstantin Kutzkov, Rasmus Pagh

TL;DR
This paper introduces a simple, communication-efficient parallel method for matrix multiplication that guarantees consistent output distribution, enabling scalable processing of large matrices and applications like frequent item mining.
Contribution
The authors present a novel consistent parallelization technique for matrix multiplication that minimizes communication and balances workload across processors.
Findings
Achieves linear speedup until input reading dominates cost.
Provides theoretical guarantees on per-processor work.
Demonstrates effectiveness on real-world data for frequent pair mining.
Abstract
We consider the problem of sparse matrix multiplication by the column row method in a distributed setting where the matrix product is not necessarily sparse. We present a surprisingly simple method for "consistent" parallel processing of sparse outer products (column-row vector products) over several processors, in a communication-avoiding setting where each processor has a copy of the input. The method is consistent in the sense that a given output entry is always assigned to the same processor independently of the specific structure of the outer product. We show guarantees on the work done by each processor, and achieve linear speedup down to the point where the cost is dominated by reading the input. Our method gives a way of distributing (or parallelizing) matrix product computations in settings where the main bottlenecks are storing the result matrix, and inter-processor…
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
TopicsData Mining Algorithms and Applications · Complexity and Algorithms in Graphs · Optimization and Search Problems
