Dynamic Load Balancing for Parallel Numerical Simulations Based on Repartitioning with Disturbed Diffusion

Load balancing is an important requirement for the efficient execution of parallel numerical simulations. In particular when the simulation domain changes over time, the mapping of computational tasks to processors needs to be modified accordingly. State-of-the-art libraries for this problem are based on graph repartitioning. They have a number of drawbacks, including the optimized metric and the difficulty of parallelizing the popular repartitioning heuristic Kernighan-Lin (KL). In this paper we further explore the very promising diffusion-based graph partitioning algorithm DibaP [1] by adapting DibaP to the related problem of load balancing and improving its implementation. The presented experiments with graph sequences that imitate adaptive numerical simulations are the first using DibaP for load balancing. They demonstrate the applicability and high quality of DibaP for load balancing by repartitioning. Compared to the faster state-of-the-art repartitioners ParMETIS and parallel JOSTLE, DibaP's solutions have partitions with significantly fewer external edges and boundary nodes and the resulting average migration volume in the important maximum norm is also the best in most cases.

[1]  William J. Knottenbelt,et al.  Parallel multilevel algorithms for hypergraph partitioning , 2008, J. Parallel Distributed Comput..

[2]  Leo Grady,et al.  Isoperimetric graph partitioning for image segmentation , 2006, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[3]  Vipin Kumar,et al.  A Unified Algorithm for Load-balancing Adaptive Scientific Simulations , 2000, ACM/IEEE SC 2000 Conference (SC'00).

[4]  Henning Meyerhenke,et al.  Balancing Parallel Adaptive FEM Computations by Solving Systems of Linear Equations , 2005, Euro-Par.

[5]  Vipin Kumar,et al.  Graph partitioning for high-performance scientific simulations , 2003 .

[6]  S. P. Lloyd,et al.  Least squares quantization in PCM , 1982, IEEE Trans. Inf. Theory.

[7]  D FalgoutRobert An Introduction to Algebraic Multigrid , 2006 .

[8]  Stefan Schamberger,et al.  Shape optimized graph partitioning , 2006 .

[9]  François Pellegrini,et al.  A Parallelisable Multi-level Banded Diffusion Scheme for Computing Balanced Partitions with Smooth Boundaries , 2007, Euro-Par.

[10]  Ümit V. Çatalyürek,et al.  Hypergraph-based Dynamic Load Balancing for Adaptive Scientific Computations , 2007, 2007 IEEE International Parallel and Distributed Processing Symposium.

[11]  Charbel Farhat,et al.  Beyond Conventional Mesh Partitioning Algorithms and the Minimum Edge Cut Criterion: Impact on Realistic Realistic Applications , 1995, PP.

[12]  Vipin Kumar,et al.  Wavefront Diffusion and LMSR: Algorithms for Dynamic Repartitioning of Adaptive Meshes , 2001, IEEE Trans. Parallel Distributed Syst..

[13]  Oliver Marquardt,et al.  Open Benchmarks for Load Balancing Heuristics in Parallel Adaptive Finite Element Computations , 2005, PDPTA.

[14]  François Pellegrini,et al.  PT-Scotch: A tool for efficient parallel graph ordering , 2008, Parallel Comput..

[15]  Henning Meyerhenke,et al.  Accelerating shape optimizing load balancing for parallel FEM simulations by algebraic multigrid , 2006, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[16]  Tamara G. Kolda,et al.  Graph partitioning models for parallel computing , 2000, Parallel Comput..

[17]  Robert van Engelen,et al.  Graph Partitioning for High Performance Scienti c Simulations , 2000 .

[18]  Chris Walshaw,et al.  Parallel optimisation algorithms for multilevel mesh partitioning , 2000, Parallel Comput..

[19]  Brian Kernighan,et al.  An efficient heuristic for partitioning graphs , 1970 .

[20]  R. M. Mattheyses,et al.  A Linear-Time Heuristic for Improving Network Partitions , 1982, 19th Design Automation Conference.

[21]  Chris Walshaw,et al.  A Combined Evolutionary Search and Multilevel Optimisation Approach to Graph-Partitioning , 2004, J. Glob. Optim..

[22]  Curt Jones,et al.  A Heuristic for Reducing Fill-In in Sparse Matrix Factorization , 1993, PPSC.

[23]  Vipin Kumar,et al.  Parallel static and dynamic multi‐constraint graph partitioning , 2002, Concurr. Comput. Pract. Exp..

[24]  Marcin Paprzycki,et al.  Parallel computing works! , 1996, IEEE Parallel & Distributed Technology: Systems & Applications.

[25]  Vipin Kumar,et al.  Multilevel Diffusion Schemes for Repartitioning of Adaptive Meshes , 1997, J. Parallel Distributed Comput..

[26]  Brian W. Kernighan,et al.  An efficient heuristic procedure for partitioning graphs , 1970, Bell Syst. Tech. J..

[27]  Robert Preis,et al.  Linear Time 1/2-Approximation Algorithm for Maximum Weighted Matching in General Graphs , 1999, STACS.

[28]  Ümit V. Çatalyürek,et al.  Hypergraph-Partitioning-Based Decomposition for Parallel Sparse-Matrix Vector Multiplication , 1999, IEEE Trans. Parallel Distributed Syst..

[29]  Ralf Diekmann,et al.  Shape-optimized mesh partitioning and load balancing for parallel adaptive FEM , 2000, Parallel Comput..

[30]  Bruce Hendrickson,et al.  A Multi-Level Algorithm For Partitioning Graphs , 1995, Proceedings of the IEEE/ACM SC95 Conference.

[31]  R.D. Falgout,et al.  An Introduction to Algebraic Multigrid Computing , 2006, Computing in Science & Engineering.

[32]  Thomas Sauerwald,et al.  A new diffusion-based multilevel algorithm for computing graph partitions of very high quality , 2008, 2008 IEEE International Symposium on Parallel and Distributed Processing.

[33]  George Cybenko,et al.  Dynamic Load Balancing for Distributed Memory Multiprocessors , 1989, J. Parallel Distributed Comput..