Communication lower bounds for distributed-memory matrix multiplication

Dror Irony, Sivan Toledo, Alexander Tiskin

Research output: Contribution to journalArticlepeer-review

Abstract

We present lower bounds on the amount of communication that matrix multiplication algorithms must perform on a distributed-memory parallel computer. We denote the number of processors by P and the dimension of square matrices by n. We show that the most widely used class of algorithms, the so-called two-dimensional (2D) algorithms, are optimal, in the sense that in any algorithm that only uses O(n2 / P) words of memory per processor, at least one processor must send or receive Ω(n2 / P 1/2) words. We also show that algorithms from another class, the so-called three-dimensional (3D) algorithms, are also optimal. These algorithms use replication to reduce communication. We show that in any algorithm that uses O(n2 / P2/3) words of memory per processor, at least one processor must send or receive Ω(n2 / P2/3) words. Furthermore, we show a continuous tradeoff between the size of local memories and the amount of communication that must be performed. The 2D and 3D bounds are essentially instantiations of this tradeoff. We also show that if the input is distributed across the local memories of multiple nodes without replication, then Ω(n2) words must cross any bisection cut of the machine. All our bounds apply only to conventional O(n3) algorithms. They do not apply to Strassen's algorithm or other o(n3) algorithms.

Original languageEnglish
Pages (from-to)1017-1026
Number of pages10
JournalJournal of Parallel and Distributed Computing
Volume64
Issue number9
DOIs
StatePublished - Sep 2004

Keywords

  • Communication
  • Distributed memory
  • Lower bounds
  • Matrix multiplication

Fingerprint

Dive into the research topics of 'Communication lower bounds for distributed-memory matrix multiplication'. Together they form a unique fingerprint.

Cite this