Michael Pippig: An Efficient and Flexible Parallel FFT Implementation Based on FFTW
- Author(s):
-
Michael Pippig
- Title:
- An Efficient and Flexible Parallel FFT Implementation Based on FFTW
- Electronic source:
-
application/pdf
- Preprint series:
- Technische Universität Chemnitz, Fakultät für Mathematik (Germany). Preprint 03, 2011
- Mathematics Subject Classification:
-
65T50 [Discrete and fast Fourier transforms] 65Y05 [Parallel computation] - Abstract:
- In this paper we describe a new open source software library called PFFT, which was developed for calculating parallel complex to complex FFTs on massively parallel architectures. It combines the flexible user interface and hardware adaptiveness of FFTW with a highly scalable two-dimensional data decomposition. We use a transpose FFT algorithm, that consist of one-dimensional FFTs and global data transpositions. For the implementation we utilize the FFTW software library. Therefore we are able to generalize our algorithm straight forward to $d$-dimensional FFTs, $d\ge3$, real to complex FFTs and even completely in place transformations. Further retained FFTW features like the selection of planning effort via flags and a separate communicator handle distinguish PFFT from other public available parallel FFT implementations. Automatic ghost cell creation and support of oversampled FFTs complete the outstanding flexibility of PFFT. Our runtime tests up to $262144$ cores of the BlueGene/P supercomputer prove PFFT to be as fast as the well known P3DFFT software package, while the flexibility of FFTW is still preserved.
- Keywords:
-
parallel fast Fourier transform,
FFT
- Language:
- English
- Publication time:
- 01/2011