Arrow Matrix Decomposition: A Novel Approach for Communication-Efficient Sparse Matrix Multiplication
<|reference_start|>Arrow Matrix Decomposition: A Novel Approach for Communication-Efficient Sparse Matrix Multiplication: We propose a novel approach to iterated sparse matrix dense matrix multiplication, a fundamental computational kernel in scientific computing and graph neural network training. In cases where matrix sizes exceed the memory of a single compute node, data transfer becomes a bottleneck. An approach based on dense matrix multiplication algorithms leads to suboptimal scalability and fails to exploit the sparsity in the problem. To address these challenges, we propose decomposing the sparse matrix into a small number of highly structured matrices called arrow matrices, which are connected by permutations. Our approach enables communication-avoiding multiplications, achieving a polynomial reduction in communication volume per iteration for matrices corresponding to planar graphs and other minor-excluded families of graphs. Our evaluation demonstrates that our approach outperforms a state-of-the-art method for sparse matrix multiplication on matrices with hundreds of millions of rows, offering near-linear strong and weak scaling.<|reference_end|>
@article{gianinazzi2024arrow,
    title={Arrow Matrix Decomposition: A Novel Approach for Communication-Efficient
  Sparse Matrix Multiplication},
    author={Lukas Gianinazzi, Alexandros Nikolaos Ziogas, Langwen Huang, Piotr
  Luczynski, Saleh Ashkboos, Florian Scheidl, Armon Carigiet, Chio Ge, Nabil
  Abubaker, Maciej Besta, Tal Ben-Nun, Torsten Hoefler},
    journal={PPoPP'24: Proceedings of the 29th ACM SIGPLAN Annual Symposium on
  Principles and Practice of Parallel Programming (2024) 404-416},
    year={2024},
    doi={10.1145/3627535.3638496},
    archivePrefix={arXiv},
    eprint={2402.19364},
    primaryClass={cs.DC}
}