Applying graph partitioning methods in measurement-based dynamic load balancing
PPL Technical Report 2012
Publication Type: Paper
Repository URL: papers/201107_ScotchCharm
Download:
[PDF]
Abstract
Load imbalance leads to an increasing waste of resources as an application is
scaled to more and more processors. Achieving the best parallel efficiency for
a program requires optimal load balancing which is a NP-hard problem. However,
finding near-optimal solutions to this problem for complex computational
science and engineering applications is becoming increasingly important.
Charm++, a migratable objects based programming model, provides a
measurement-based dynamic load balancing framework. This framework instruments
and then migrates over-decomposed objects to balance computational load and
communication at runtime. This paper explores the use of graph partitioning
algorithms, traditionally used for partitioning physical domains/meshes, for
measurement-based dynamic load balancing of parallel applications. In
particular, we present repartitioning methods developed in a graph partitioning
toolbox called SCOTCH that consider the previous mapping to minimize migration
costs. We also discuss a new imbalance reduction algorithm for graphs with
irregular load distributions. We compare several load balancing algorithms
using micro-benchmarks on Intrepid and Ranger and evaluate the effect of
communication, number of cores and number of objects on the benefit achieved
from load balancing. New algorithms developed in SCOTCH lead to better
performance compared to the METIS partitioners for several cases, both in terms
of the application execution time and fewer number of objects migrated.
People
- Abhinav Bhatele
- Sébastien Fourestier
- Harshitha Menon
- Laxmikant Kale
- François Pellegrini
Research Areas









