English

Red-blue pebbling revisited: near optimal parallel matrix-matrix multiplication

Computational Complexity 2019-12-16 v3 Distributed, Parallel, and Cluster Computing Performance

Abstract

We propose COSMA: a parallel matrix-matrix multiplication algorithm that is near communication-optimal for all combinations of matrix dimensions, processor counts, and memory sizes. The key idea behind COSMA is to derive an optimal (up to a factor of 0.03\% for 10MB of fast memory) sequential schedule and then parallelize it, preserving I/O optimality. To achieve this, we use the red-blue pebble game to precisely model MMM dependencies and derive a constructive and tight sequential and parallel I/O lower bound proofs. Compared to 2D or 3D algorithms, which fix processor decomposition upfront and then map it to the matrix dimensions, it reduces communication volume by up to 3\sqrt{3} times. COSMA outperforms the established ScaLAPACK, CARMA, and CTF algorithms in all scenarios up to 12.8x (2.2x on average), achieving up to 88\% of Piz Daint's peak performance. Our work does not require any hand tuning and is maintained as an open source implementation.

Keywords

Cite

@article{arxiv.1908.09606,
  title  = {Red-blue pebbling revisited: near optimal parallel matrix-matrix multiplication},
  author = {Grzegorz Kwasniewski and Marko Kabić and Maciej Besta and Joost VandeVondele and Raffaele Solcà and Torsten Hoefler},
  journal= {arXiv preprint arXiv:1908.09606},
  year   = {2019}
}

Comments

18 pages, 29 figures, short version submitted to the SC'19 conference

R2 v1 2026-06-23T10:56:46.065Z