Barreales, Gonzalo NicolasNovalbos, MarcosOtaduy, Miguel A.Sanchez, Alberto2022-02-082022-02-082021Gonzalo Nicolas Barreales, Marcos Novalbos, Miguel A. Otaduy, Alberto Sanchez, MDScale: Scalable multi-GPU bonded and short-range molecular dynamics, Journal of Parallel and Distributed Computing, Volume 157, 2021, Pages 243-255, ISSN 0743-7315, https://doi.org/10.1016/j.jpdc.2021.07.006.0743-7315http://hdl.handle.net/10115/18616GPUs have enabled a drastic change to computing environments, making massively parallel computing possible. Molecular dynamics is a perfect candidate problem for massively parallel computing, but to date it has not taken full advantage of multi-GPU environments due to the difficulty of partitioning molecular dynamics problems and exchanging problem data among compute nodes. These difficulties restrict the use of GPUs to only some of the computations in a full molecular dynamics problem, and hence prevent scalability beyond just a few GPUs. This work presents a scalable parallelization solution for the bonded and short-range forces present in a molecular dynamics problem. Together with existing solutions for long-range forces, it enables highly scalable, parallel molecular dynamics on multi-GPU computing environments. Specifically, the proposed solution divides the molecular volume into independent parts assigned to different GPUs, but it maintains a global bond structure that is efficiently exchanged when atoms move across GPUs. We demonstrate close-to-linear speedup of the proposed solution, simulating the dynamics of gigamolecules with 1 billion atoms on a computing environment with 96 GPUs, and obtaining superior performance to the well known molecular dynamics simulator NAMD.engAttribution-NonCommercial-NoDerivatives 4.0 Internacionalhttp://creativecommons.org/licenses/by-nc-nd/4.0/Molecular dynamicsMulti-GPULarge scaleBonded forcesVan der walls forcesNAMDMDScale: Scalable multi-GPU bonded and short-range molecular dynamicsinfo:eu-repo/semantics/article10.1016/j.jpdc.2021.07.006info:eu-repo/semantics/openAccess