线性代数核的并行 I/O 最优性:近最优矩阵分解
On the Parallel I/O Optimality of Linear Algebra Kernels: Near-Optimal Matrix Factorizations
AI总结:
针对并行矩阵分解通信非最优问题,提出基于2.5D分解的近最优Cholesky与LU算法,理论界定I/O下界并显著降低通信与运行时间。
摘要:
矩阵分解是科学计算中最重要的构建模块之一。然而,最先进的库并未达到通信最优,未能充分利用当前并行架构。我们提出了用于 Cholesky 和 LU 分解的新型算法,这些算法采用渐近通信最优的 2.5D 分解。我们首先建立一个用于推导线性代数核并行 I/O 下界的理论框架,随后利用其洞见推导 Cholesky 和 LU 调度;二者在每个处理器上均通信 N^3/(P*sqrt(M)) 个元素,其中 M 是本地内存大小。实验结果与我们的理论分析相符:我们的实现显著少于 Intel MKL、SLATE 以及渐近通信最优的 CANDMC 和 CAPITAL 库的通信量。在 Piz Daint 超级计算机最多 512 个 CPU 节点上、矩阵规模从 2,048 到 262,144 的测试中,我们的代码几乎在所有场景下都优于这些最先进库,将求解时间最多缩短三倍。我们的代码兼容 ScaLAPACK,并作为开源库提供。
英文摘要:
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.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。