Hauptseite > Publikationsdatenbank > A CUDA fast multipole method with highly efficient M2L far field evaluation |
Journal Article | FZJ-2021-00076 |
; ; ; ; ; ;
2021
Sage Science Press
Thousand Oaks, Calif.
This record in other databases:
Please use a persistent id in citations: http://hdl.handle.net/2128/26689 doi:10.1177/1094342020964857
Abstract: Solving an N-body problem, electrostatic or gravitational, is a crucial task and the main computational bottleneck in many scientific applications. Its direct solution is an ubiquitous showcase example for the compute power of graphics processing units (GPUs). However, the naïve pairwise summation has 𝒪(𝑁2) computational complexity. The fast multipole method (FMM) can reduce runtime and complexity to 𝒪(𝑁) for any specified precision. Here, we present a CUDA-accelerated, C++ FMM implementation for multi particle systems with 𝑟−1 potential that are found, e.g. in biomolecular simulations. The algorithm involves several operators to exchange information in an octree data structure. We focus on the Multipole-to-Local (M2L) operator, as its runtime is limiting for the overall performance. We propose, implement and benchmark three different M2L parallelization approaches. Approach (1) utilizes Unified Memory to minimize programming and porting efforts. It achieves decent speedups for only little implementation work. Approach (2) employs CUDA Dynamic Parallelism to significantly improve performance for high approximation accuracies. The presorted list-based approach (3) fits periodic boundary conditions particularly well. It exploits FMM operator symmetries to minimize both memory access and the number of complex multiplications. The result is a compute-bound implementation, i.e. performance is limited by arithmetic operations rather than by memory accesses. The complete CUDA parallelized FMM is incorporated within the GROMACS molecular dynamics package as an alternative Coulomb solver.
![]() |
The record appears in these collections: |