Balancing the load: A Voronoi based scheme for parallel computations
Elad Steinberg, Almog Yalinewich, Re'em Sari, Paul Duffell

TL;DR
This paper introduces a Voronoi diagram-based scheme to achieve efficient load balancing in parallel numerical simulations, reducing communication and avoiding global data redistributions.
Contribution
A novel Voronoi-based method for load balancing in parallel simulations that maintains balance without global data redistribution, demonstrated in a hydrodynamical code.
Findings
Efficient load balancing achieved with Voronoi diagrams.
Reduced communication overhead in parallel computations.
Method applicable to various 2D and 3D simulation codes.
Abstract
The use of numerical simulations in science is ever increasing and with it the computational size. In many cases single processors are no longer adequate and simulations are run on multiple core machines or supercomputers. One of the key issues when running a simulation on multiple CPUs is maintaining a proper load balance throughout the run and minimizing communications between CPUs. We propose a novel method of utilizing a Voronoi diagram to achieve a nearly perfect load balance without the need of any global redistributions of data. As a show case, we implement our method in RICH, a 2D moving mesh hydrodynamical code, but it can be extended trivially to other codes in 2D or 3D. Our tests show that this method is indeed efficient and can be used in a large variety of existing hydrodynamical codes as well as other applications.
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.
