Abstract
The task-based programming model associated with dynamic runtime systems has gained popularity for challenging problems because of workload imbalance, heterogeneous resources, or extreme concurrency. During the last decade, low-rank matrix approximations - where the main idea consists of exploiting data sparsity, typically by compressing off-diagonal tiles up to an application-specific accuracy threshold - have been adopted to address the curse of dimensionality at extreme scale. In this paper, we create a bridge between the runtime and the linear algebra by communicating knowledge of the data sparsity to the runtime. We design and implement this synergistic approach with high user productivity in mind, in the context of the PaRSEC runtime system and the HiCMA numerical library. This requires extending PaRSEC with new features to integrate rank information into the dataflow so that proper decisions can be made at runtime. We focus on the tile low-rank (TLR) Cholesky factorization for solving 3D data-sparse covariance matrix problems arising in environmental applications. In particular, we employ the 3D exponential model of the Mateŕn matrix kernel, which exhibits challenging nonuniform high ranks in off-diagonal tiles. We first provide dynamic data structure management driven by a performance model to reduce extra floating-point operations. Next, we optimize the memory footprint of the application by relying on a dynamic memory allocator, and supported by a rank-aware data distribution to cope with the workload imbalance. Finally, we expose further parallelism using kernel recursive formulations to shorten the critical path. Our resulting high-performance implementation outperforms existing data-sparse TLR Cholesky factorization by up to 7-fold on a large-scale distributed-memory system, while minimizing the memory footprint up to a 44-fold factor. This multidisciplinary work highlights the need to empower runtime systems beyond their original duty of task scheduling for servicing next-generation low-rank matrix algebra libraries.
Original language | English |
---|---|
Title of host publication | Proceedings - 2021 IEEE 35th International Parallel and Distributed Processing Symposium, IPDPS 2021 |
Publisher | Institute of Electrical and Electronics Engineers Inc. |
Pages | 79-89 |
Number of pages | 11 |
ISBN (Electronic) | 9781665440660 |
DOIs | |
State | Published - May 2021 |
Event | 35th IEEE International Parallel and Distributed Processing Symposium, IPDPS 2021 - Virtual, Online Duration: May 17 2021 → May 21 2021 |
Publication series
Name | Proceedings - 2021 IEEE 35th International Parallel and Distributed Processing Symposium, IPDPS 2021 |
---|
Conference
Conference | 35th IEEE International Parallel and Distributed Processing Symposium, IPDPS 2021 |
---|---|
City | Virtual, Online |
Period | 05/17/21 → 05/21/21 |
Funding
Acknowledgments. This research was partially supported by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of the U.S. Department of Energy Office of Science and the National Nuclear Security Administration.
Keywords
- Asynchronous executions and load balancing
- Dynamic runtime system
- Environmental applications
- High-performance computing
- Low-rank matrix computations
- Task-based programming model
- User productivity