Large-scale parallelization of molecular dynamics simulations is facing challenges which seriously affect the simulation efficiency,among which the load imbalance problem is the most critical.In this paper,we propose,a new molecular dynamics static load balancing method(MDSLB).By analyzing the characteristics of the short-range force of molecular dynamics programs running in parallel,we divide the short-range force into three kinds of force models,and then package the computations of each force model into many tiny computational units called'cell loads',which provide the basic data structures for our load balancing method.In MDSLB,the spatial region is separated into sub-regions called'local domains',and the cell loads of each local domain are allocated to every processor in turn.Compared with the dynamic load balancing method,MDSLB can guarantee load balance by executing the algorithm only once at program startup without migrating the loads dynamically.We implement MDSLB in OpenFOAM software and test it on TianHe-1A supercomputer with 16 to 512 processors.Experimental results show that MDSLB can save 34%–64%time for the load imbalanced cases.
Large-scale parallelization of molecular dynamics simulations is facing challenges which seriously affect the simula- tion efficiency, among which the load imbalance problem is the most critical. In this paper, we propose, a new molecular dynamics static load balancing method (MDSLB). By analyzing the characteristics of the short-range force of molecular dynamics programs running in parallel, we divide the short-range force into three kinds of force models, and then pack- age the computations of each force model into many tiny computational units called "cell loads", which provide the basic data structures for our load balancing method. In MDSLB, the spatial region is separated into sub-regions called "local domains", and the cell loads of each local domain are allocated to every processor in turn. Compared with the dynamic load balancing method, MDSLB can guarantee load balance by executing the algorithm only once at program startup without migrating the loads dynamically. We implement MDSLB in OpenFOAM software and test it on TianHe-lA supercomputer with 16 to 512 processors. Experimental results show that MDSLB can save 34%-64% time for the load imbalanced cases.