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.
Published Version (
Free)
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have