A Tuned and Scalable Fast Multipole Method as a Preeminent Algorithm for Exascale Systems
arXiv:1106.2176 · doi:10.1177/1094342011429952
Abstract
Among the algorithms that are likely to play a major role in future exascale computing, the fast multipole method (FMM) appears as a rising star. Our previous recent work showed scaling of an FMM on GPU clusters, with problem sizes in the order of billions of unknowns. That work led to an extremely parallel FMM, scaling to thousands of GPUs or tens of thousands of CPUs. This paper reports on a a campaign of performance tuning and scalability studies using multi-core CPUs, on the Kraken supercomputer. All kernels in the FMM were parallelized using OpenMP, and a test using 10^7 particles randomly distributed in a cube showed 78% efficiency on 8 threads. Tuning of the particle-to-particle kernel using SIMD instructions resulted in 4x speed-up of the overall algorithm on single-core tests with 10^3 - 10^7 particles. Parallel scalability was studied in both strong and weak scaling. The strong scaling test used 10^8 particles and resulted in 93% parallel efficiency on 2048 processes for the non-SIMD code and 54% for the SIMD-optimized code (which was still 2x faster). The weak scaling test used 10^6 particles per process, and resulted in 72% efficiency on 32,768 processes, with the largest calculation taking about 40 seconds to evaluate more than 32 billion unknowns. This work builds up evidence for our view that FMM is poised to play a leading role in exascale computing, and we end the paper with a discussion of the features that make it a particularly favorable algorithm for the emerging heterogeneous and massively parallel architectural landscape.
References in corpus (3)
Cited by in corpus (17)
- Tackling Exascale Software Challenges in Molecular Dynamics Simulations with GROMACS
- Large-scale dark matter simulations
- FFT, FMM, or Multigrid? A comparative Study of State-Of-the-Art Poisson Solvers for Uniform and Nonuniform Grids in the Unit Cube
- Adaptive fast multipole methods on the GPU
- The Fast Multipole Method and Point Dipole Moment Polarizable Force Fields
- Benchmarking preconditioned boundary integral formulations for acoustics
- A parallel directional Fast Multipole Method
- Fast Multipole Methods for -body Simulations of Collisional Star Systems
- A hybrid Eulerian-Lagrangian flow solver
- Highly Parallel Demagnetization Field Calculation Using the Fast Multipole Method on Tetrahedral Meshes with Continuous Sources
- Fast electrostatic solvers for kinetic Monte Carlo simulations
- Breaking Down the Parallel Performance of GROMACS, a High-Performance Molecular Dynamics Software
- A parallel fast multipole method for a space-time boundary element method for the heat equation
- High-productivity, high-performance workflow for virus-scale electrostatic simulations with Bempp-Exafmm
- An Optimizing Symbolic Algebra Approach for Generating Fast Multipole Method Operators
- Inexact Krylov iterations and relaxation strategies with fast-multipole boundary element method
- Fast multipole networks