arrow
Return

Cache blocking of distributed-memory parallel matrix power kernels

delete2025-02-20
delete0
delete
OA
AI
D
Dane C. Lacey *
C
Christie Louis Alappat
F
F. F. Lange
G
Georg Hager
H
Holger Fehske
G
Gerhard Wellein
DOI:10.1177/10943420251319332delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Sparse matrix-vector products (SpMVs) are a bottleneck in many scientific codes. Due to the heavy strain on the main memory interface from loading the sparse matrix and the possibly irregular memory access pattern, SpMV typically exhibits low arithmetic intensity. Repeating these products multiple times with the same matrix is required in many algorithms. This so-called matrix power kernel (MPK) provides an opportunity for data reuse since the same matrix data is loaded from main memory multiple times, an opportunity that has only recently been exploited successfully with the Recursive Algebraic Coloring Engine (RACE). Using RACE, one considers a graph based formulation of the SpMV and employs a level-based implementation of SpMV for the reuse of relevant matrix data. However, the underlying data dependencies have restricted the use of this concept to shared memory parallelization and thus to single compute nodes. Enabling cache blocking for distributed-memory parallelization of MPK is challenging due to the need for explicit communication and synchronization of data in neighboring levels. In this work, we propose and implement a flexible method that interleaves the cache-blocking capabilities of RACE with an MPI communication scheme that fulfills all data dependencies among processes. Compared to a traditional distributed-memory parallel MPK, our new distributed level-blocked MPK yields substantial speed-ups on modern Intel and AMD architectures across a wide range of sparse matrices from various scientific applications. Finally, we address a modern quantum physics problem to demonstrate the applicability of our method, achieving a speed-up of up to 4x on 832 cores of an Intel Sapphire Rapids cluster.
Keywords:
Distributed-memory algorithms
sparse matrices
cache blocking
performance

Journal

International Journal of High Performance Computing Applications cover
International Journal of High Performance Computing Applications
IF:
2.5
Papers:
1.1K
Citations:
1.3K

Organization

U
University of Erlangen Nuremberg
Scholars:
3.2W
Papers: 2.6W
Citations: 29
Cited Papers

Cited Papers

Author response: Preserving neuromuscular synapses in ALS by stimulating MuSK with a therapeutic agonist antibody
err
IF0
err2018-02-02
err0
errOAAI
errSarah Cantor; Wei Zhang; Nicolas Delestrée; Leonor Remédio; George Z Mentis; Steven J Burden
errShare
errSave
Heavy metal removal from water by adsorption using a low-cost geopolymer
err2020-04-18
err0
PREAI
errLaxmipriya Panda; Sandeep K. Jena; Swagat S. Rath; Pramila K. Misra
errShare
errSave
Algebraic temporal blocking for sparse iterative solvers on multi-core CPUs
err2024-09-25
err1
PREAI
errAlappat, Christie; Thies, Jonas; Hager, Georg; Fehske, Holger; Wellein, Gerhard
errShare
errSave
Quantum boomerang effect in systems without time-reversal symmetry
err2022-05-26
err8
errOAAI
errJanarek, Jakub; Gremaud, Benoit; Zakrzewski, Jakub; Delande, Dominique
errShare
errSave
Localization in weakly coupled planes and weakly coupled wires
err1997-11-15
err6
PREAI
errZambetaki, I; Li, QM; Economou, EN; Soukoulis, CM
errShare
errSave
researcher View more