PFFT: An extension of FFTW to massively parallel architectures We present an MPI based software library for computing fast Fourier transforms (FFTs) on massively parallel, distributed memory architectures based on the message passing interface standard (MPI). Similar to established transpose FFT algorithms, we propose a parallel FFT framework that is based on a combination of local FFTs, local data permutations, and global data transpositions. This framework can be generalized to arbitrary multidimensional data and process meshes. All performance-relevant building blocks can be implemented with the help of the FFTW software library. Therefore, our library offers great flexibility and portable performance. Similarly to FFTW, we are able to compute FFTs of complex data, real data, and even- or odd-symmetric real data. All the transforms can be performed completely in place. Furthermore, we propose an algorithm to calculate pruned FFTs more efficiently on distributed memory architectures. For example, we provide performance measurements of FFTs of sizes between $512^3$ and $8192^3$ up to 262144 cores on a BlueGene/P architecture, up to 32768 cores on a BlueGene/Q architecture, and up to 4096 cores on the J”ulich Research on Petaflop Architectures (JuRoPA).
Keywords for this software
References in zbMATH (referenced in 11 articles , 1 standard article )
Showing results 1 to 11 of 11.
- Ashwin Vishnu Mohanan, Cyrille Bonamy, Pierre Augier: FluidFFT: common API (C++ and Python) for Fast Fourier Transform HPC libraries (2018) arXiv
- Hofmann, Michael; Nestler, Franziska; Pippig, Michael: NFFT based Ewald summation for electrostatic systems with charges and dipoles (2017)
- Lu, Jianfeng; Yang, Haizhao: Preconditioning orbital minimization method for planewave discretization (2017)
- Gholami, Amir; Malhotra, Dhairya; Sundar, Hari; Biros, George: FFT, FMM, or multigrid? A comparative study of state-of-the-art Poisson solvers for uniform and nonuniform grids in the unit cube (2016)
- Jung, Jaewoon; Kobayashi, Chigusa; Imamura, Toshiyuki; Sugita, Yuji: Parallel implementation of 3D FFT with volumetric decomposition schemes for efficient molecular dynamics simulations (2016)
- Mortensen, Mikael; Langtangen, Hans Petter: High performance python for direct numerical simulations of turbulent flows (2016)
- Nestler, Franziska; Pippig, Michael; Potts, Daniel: Fast ewald summation based on NFFT with mixed periodicity (2015)
- Wiens, Jeffrey K.; Stockie, John M.: An efficient parallel immersed boundary algorithm using a pseudo-compressible fluid solver (2015)
- Browne, P. A.; Budd, C. J.; Piccolo, C.; Cullen, M.: Fast three dimensional r-adaptive mesh redistribution (2014)
- Pippig, Michael: PFFT: An extension of FFTW to massively parallel architectures (2013)
- Pippig, Michael; Potts, Daniel: Parallel three-dimensional nonequispaced fast Fourier transforms and their application to particle simulation (2013)