On the Parallel I/O Optimality of Linear Algebra Kernels: Near-Optimal Matrix Factorizations
Authors:
Grzegorz Kwasniewski,
Marko Kabić,
Tal Ben-Nun,
Alexandros Nikolaos Ziogas,
Jens Eirik Saethre,
André Gaillard,
Timo Schneider,
Maciej Besta,
Anton Kozhevnikov,
Joost VandeVondele,
Torsten Hoefler
Abstract:
Matrix factorizations are among the most important building blocks of scientific computing. State-of-the-art libraries, however, are not communication-optimal, underutilizing current parallel architectures. We present novel algorithms for Cholesky and LU factorizations that utilize an asymptotically communication-optimal 2.5D decomposition. We first establish a theoretical framework for deriving p…
▽ More
Matrix factorizations are among the most important building blocks of scientific computing. State-of-the-art libraries, however, are not communication-optimal, underutilizing current parallel architectures. We present novel algorithms for Cholesky and LU factorizations that utilize an asymptotically communication-optimal 2.5D decomposition. We first establish a theoretical framework for deriving parallel I/O lower bounds for linear algebra kernels, and then utilize its insights to derive Cholesky and LU schedules, both communicating N^3/(P*sqrt(M)) elements per processor, where M is the local memory size. The empirical results match our theoretical analysis: our implementations communicate significantly less than Intel MKL, SLATE, and the asymptotically communication-optimal CANDMC and CAPITAL libraries. Our code outperforms these state-of-the-art libraries in almost all tested scenarios, with matrix sizes ranging from 2,048 to 262,144 on up to 512 CPU nodes of the Piz Daint supercomputer, decreasing the time-to-solution by up to three times. Our code is ScaLAPACK-compatible and available as an open-source library.
△ Less
Submitted 25 April, 2023; v1 submitted 20 August, 2021;
originally announced August 2021.