Proven Distributed Memory Parallelization of Particle Methods
Johannes Pahlke, Ivo F. Sbalzarini
TL;DR
The paper addresses the lack of formal guarantees for distributed-memory parallelization of particle methods by formalizing particle methods as a $7$-tuple framework and proving a cell-list, checkerboard-based distributed scheme is equivalent to the sequential method for pull-interaction particle methods with no global operations. It introduces a distributed state-transition $ ilde{S}$ and shows equivalence to the standard $S$ up to particle ordering, accompanied by explicit assumptions and lemmas (bijective index transforms, order-independence, non-overlapping communications) and time-complexity bounds. The results yield linear scaling in particle number and provide a rigorous basis for provably correct HPC frameworks supporting SPH, MD, DEM, RKPM, and related methods. This work thus offers a solid theoretical foundation for general-purpose, correct parallel implementations of particle methods on distributed-memory architectures, with clear directions for extensions to more general interaction schemes and architectures.
Abstract
We provide a mathematically proven parallelization scheme for particle methods on distributed-memory computer systems. Particle methods are a versatile and widely used class of algorithms for computer simulations and numerical predictions in various applications, ranging from continuum fluid dynamics and granular flows, using methods such as Smoothed Particle Hydrodynamics (SPH) and Discrete Element Methods (DEM) to Molecular Dynamics (MD) simulations in molecular modeling. Particle methods naturally lend themselves to implementation on parallel-computing hardware. So far, however, a mathematical proof of correctness and equivalence to sequential implementations was only available for shared-memory parallelism. Here, we leverage a formal definition of the algorithmic class of particle methods to provide a proven parallelization scheme for distributed-memory computers. We prove that these parallelized particle methods on distributed memory computers are formally equivalent to their sequential counterpart for a well-defined class of particle methods. Notably, the here analyzed parallelization scheme is well-known and commonly used. Our analysis is, therefore, of immediate practical relevance to existing and new parallel software implementations of particle methods and places them on solid theoretical grounds.
