A Tuned and Scalable Fast Multipole Method as a Preeminent Algorithm for Exascale Systems
Rio Yokota, Lorena Barba

TL;DR
This paper demonstrates a highly optimized and scalable implementation of the fast multipole method (FMM) on multi-core CPUs and supercomputers, showing its potential as a key algorithm for exascale computing.
Contribution
The paper presents extensive performance tuning and scalability analysis of FMM on CPU clusters, including SIMD optimization and OpenMP parallelization, highlighting its suitability for exascale systems.
Findings
Achieved 78% efficiency on 8 threads for 10^7 particles.
Attained 93% strong scaling efficiency on 2048 processes with 10^8 particles.
Handled over 32 billion unknowns in 40 seconds on large-scale supercomputers.
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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
