Two-level Dynamic Load Balancing for High Performance Scientific Applications
Ali Mohammed, Aurelien Cavelan, Florina M. Ciorba, Ruben M. Cabezon,, Ioana Banicesu

TL;DR
This paper proposes a two-level dynamic load balancing approach for high-performance scientific applications on HPC systems, demonstrating up to 21% performance improvement by addressing load imbalance at both thread and process levels.
Contribution
It introduces a generic, joint load balancing method using extended LaPeSD and DLS4LB libraries for MPI and OpenMP applications, addressing multi-level load imbalance.
Findings
Joint load balancing improves performance by up to 21%.
Different DLS techniques have varying effectiveness at each level.
Addressing both levels is essential for optimal performance.
Abstract
Scientific applications are often complex, irregular, and computationally-intensive. To accommodate the ever-increasing computational demands of scientific applications, high-performance computing (HPC) systems have become larger and more complex, offering parallelism at multiple levels (e.g., nodes, cores per node, threads per core). Scientific applications need to exploit all the available multilevel hardware parallelism to harness the available computational power. The performance of applications executing on such HPC systems may adversely be affected by load imbalance at multiple levels, caused by problem, algorithmic, and systemic characteristics. Nevertheless, most existing load balancing methods do not simultaneously address load imbalance at multiple levels. This work investigates the impact of load imbalance on the performance of three scientific applications at the thread and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
