P3DFFT: a framework for parallel computations of Fourier transforms in three dimensions
arXiv:1905.02803 · doi:10.1137/11082748X
Abstract
Fourier and related transforms is a family of algorithms widely employed in diverse areas of computational science, notoriously difficult to scale on high-performance parallel computers with large number of processing elements (cores). This paper introduces a popular software package called P3DFFT implementing Fast Fourier Transforms (FFT) in three dimensions (3D) in a highly efficient and scalable way. It overcomes a well-known scalability bottleneck of 3D FFT implementations by using two-dimensional domain decomposition. Designed for portable performance, P3DFFT achieves excellent timings for a number of systems and problem sizes. On Cray XT5 system P3DFFT attains 45% efficiency in weak scaling from 128 to 65,536 computational cores. Library features include Fourier and Chebyshev transforms, Fortran and C interfaces, in- and out-of-place transforms, uneven data grids, single and double precision. P3DFFT is available as open source at http://code.google.com/p/p3dfft/. This paper discusses P3DFFT implementation and performance in a way that helps guide the user in making optimal choices for parameters of their runs.
References in corpus (2)
Cited by in corpus (56)
- FastPM: a new scheme for fast simulations of dark matter and halos
- The effect of Reynolds number on inertial particle dynamics in isotropic turbulence. Part I: Simulations without gravitational effects
- Scaling of a Fast Fourier Transform and a Pseudo-spectral Fluid Solver up to 196608 cores
- Spectra of strong MHD Turbulence from high-resolution simulations
- Bumblebee flight in heavy turbulence
- FFT, FMM, or Multigrid? A comparative Study of State-Of-the-Art Poisson Solvers for Uniform and Nonuniform Grids in the Unit Cube
- High performance Python for direct numerical simulations of turbulent flows
- Numerical Solution of 3D Poisson-Nernst-Planck Equations Coupled with Classical Density Functional Theory for Modeling Ion and Electron Transport in a Confined Environment
- Cosmological neutrino simulations at extreme scale
- Differential Neutrino Condensation onto Cosmic Structure
- Multiscale fluid--particle thermal interaction in isotropic turbulence
- Simulating Brownian suspensions with fluctuating hydrodynamics
- Interpolative Butterfly Factorization
- Effect of turbulence on collisions of dust particles with planetesimals in protoplanetary disks
- AccFFT: A library for distributed-memory FFT on CPU and GPU architectures
- Strong Coupling of Alfvén and Fast Modes in Compressible Relativistic Magnetohydrodynamic Turbulence in Magnetically-Dominated Plasmas
- Mixing enhancement in binary fluids using optimised stirring strategies
- The impact of turbulence on flying insects in tethered and free flight: high-resolution numerical experiments
- Regime Transition in the Energy Cascade of Rotating Turbulence
- TTC: A Tensor Transposition Compiler for Multiple Architectures
- Numerical analysis of several FFT-based schemes for computational homogenization
- On the self-similarity of line segments in decaying homogeneous isotropic turbulence
- Scale dependence and cross-scale transfer of kinetic energy in compressible hydrodynamic turbulence at moderate Reynolds numbers
- An Efficient Particle Tracking Algorithm for Large-Scale Parallel Pseudo-Spectral Simulations of Turbulence
- FLUPS: a Fourier-based Library of Unbounded Poisson Solvers
- FluidFFT: common API (C++ and Python) for Fast Fourier Transform HPC libraries
- A generalized massively parallel ultra-high order FFT-based Maxwell solver
- A parallel-in-time approach for accelerating direct-adjoint studies
- Performance Evaluation of the Zero-Multipole Summation Method in Modern Molecular Dynamics Software
- PittPack: An Open-Source Poisson's Equation Solver for Extreme-Scale Computing with Accelerators
- A highly scalable particle tracking algorithm using partitioned global address space (PGAS) programming for extreme-scale turbulence simulations
- Large-Scale Discrete Fourier Transform on TPUs
- Wafer-Scale Fast Fourier Transforms
- Novel Model-based Methods for Performance Optimization of Multithreaded 2D Discrete Fourier Transform on Multicore Processors
- Rossby Number Effects on Columnar Eddy Formation and the Energy Dissipation Law in Homogeneous Rotating Turbulence
- TTC: A high-performance Compiler for Tensor Transpositions
- Local precursors to anomalous dissipation in Navier-Stokes turbulence: Burgers vortex-type models and simulation analysis
- Calliope: Pseudospectral shearing magnetohydrodynamics code with a pencil decomposition
- Non-equilibrium Ensembles for the three-dimensional Navier-Stokes Equations
- Experiences Porting Distributed Applications to Asynchronous Tasks: A Multidimensional FFT Case-study
- FaVeST: Fast Vector Spherical Harmonic Transforms
- Minimizing communication in the multidimensional FFT
- Connecting finite-time Lyapunov exponents with supersaturation and droplet dynamics in the bulk of a turbulent cloud
- Efficient point-based simulation of four-way coupled particles in turbulence at high number density
- Lagrangian model for passive scalar gradients in turbulence
- FLUPS -- a flexible and performant massively parallel Fourier transform library
- Adjoint-Based Identification of Sound Sources for Sound Reinforcement and Source Localization
- Diffuselet method for three-dimensional turbulent mixing of a cloudy air filament
- A Flexible Framework for Parallel Multi-Dimensional DFTs
- Phase transition analogs in laser collisions with a dark-field setup
- Forward and backward in time dispersion of fluid and inertial particles in isotropic turbulence
- An efficient spectral Poisson solver for the nirvana-III code: the shearing-box case with vertical vacuum boundary conditions
- Performance Tuning of a Parallel 3-D FFT Package OpenFFT
- Ginnungagap -- a massively parallel cosmological initial conditions generator
- CROFT: A scalable three-dimensional parallel Fast Fourier Transform (FFT) implementation for High Performance Clusters
- Large-scale simulation of steady and time-dependent active suspensions with the force-coupling method