Description
The simulation of systems with large particle numbers is one of the real challenges of high performance computing. The list of finalists of the renowned Gorden Bell award and many victorious contributions of the last years show the relevance of such simulations. In particular, the scalability of the simulations is a demanding task due to the development of hardware since approximately 2004: While the clock frequencies have stalled the number of processors has increased, complemented by dedicated accelerator cards.
Obviously, the simulation of large particle numbers comes along with a high computational effort. For acceptable response times, the computational load has to be distributed to many processors. Therefore, the parallelization of such simulation scenarios is an integral part of the research of the SFB.
For a high efficiency of the parallelizations it is not sufficient to simply distribute the data and the calculations. Nearly all simulation scenarios require periodic synchronization points, e.g. after a certain number of time steps. These synchronizations reflect global dependencies and thus require global communication. Thereby, the system has to wait for the slowest process. To avoid long waiting times, the balance of the load must be uniform, which requires a good load balancing scheme. With an increasing number of processors the problem becomes even more demanding, because more processes have to wait for the slowest one.
For homogeneous scenarios it is possible to achieve well-balanced load by a uniform decomposition of the domain, as in such scenarios the relation between size and load is linear. For heterogeneous scenarios in the SFB, e.g. agglomeration processes or laser ablation, this approach is not sufficient. This is similarly true for coupled scenarios, in particular if local adaptivity is used to map the dynamic character of the simulation scenarios to the discretization.
For the realization of such large-scale simulations beyond the hitherto achieved ones in the 3rd funding period, this important component should be developed and implemented within this project.
Strategies for load balancing shall be fundamentally investigated with respect to the relevant scenarios for the whole SFB, and the limits with respect to the ideal solution have to be determined. Fast and reliable methods to estimate the load will be developed to allow for efficient re-balancing schemes in dynamic simulations. Finally, specific load balancing methods will be required for specific applications of the SFB and will be realized jointly with the corresponding projects.