OpenFFT is an open
source parallel package for computing multi-dimensional Fast
Fourier Transforms (3-D and 4-D FFTs) of both real and complex
numbers of
arbitrary
input size.
It originates from OpenMX
(Open
source package for Material eXplorer). OpenFFT adopts
a communication-optimal domain decomposition method that is adaptive
and capable of
localizing data when
transposing from one dimension to another for reducing the total volume
of communication. It is written in C
and MPI, with support for Fortran through the Fortran interface, and
employs FFTW3
for computing 1-D FFTs.
OpenFFT is developed by Truong Vinh Truong Duy and
Taisuke Ozaki at the University of Tokyo.
Features
- Domain
decomposition method: OpenFFT
adopts
a decomposition method that is capable of localizing data when
transposing from one dimension to another for reducing the total volume
of
communication. Also, the decomposition is adaptive, and can
automatically switch between 1-D, 2-D, and 3-D (for 4-D FFTs) depending
on the number of
processes and data size. Please refer to the publications for
detail.
- Support
for fast parallel complex-to-complex and real-to-complex transforms of
3-D FFTs and
4-D FFTs with
arbitrary
input size.
- Tuning
of communication with an auto-tuning feature.
- Support
for hybrid MPI/OpenMP execution.
- Portable,
tested on various general-purpose Linux clusters and popular
supercomputers, including Cray XC30, SGI Altix UV1000, SGI InfiniBand
cluster, FX10, and the K
computer.
- Written
in C and MPI, with
support for Fortran through the Fortran interface.
- Open
source package, released under the GNU General Public License (GPL).
Manual
Publications
[1]
T.V.T.
Duy and T. Ozaki, "A decomposition method with minimum communication
amount for parallelization of multi-dimensional FFTs", Computer Physics
Communications, Vol. 185, Issue 1, pp. 153-164, 2014. DOI:
10.1016/j.cpc.2013.08.028
[2]
T.V.T.
Duy and T. Ozaki, "A three-dimensional domain decomposition method for
large-scale DFT electronic structure calculations", Computer Physics
Communications, Vol. 185, Issue 3, pp. 777-789, 2014. DOI:
10.1016/j.cpc.2013.11.008
[3] Best
Research Poster Award for "OpenFFT: An Open-Source Package for 3-D FFTs
with Minimal Volume of Communication", the 29th International
Supercomputing Conference (ISC'14), 2014.
Acknowledgements
This
package has its origins in OpenMX (Open
source package for Material eXplorer), and has been funded by CMSI
(Computational Materials Science Initiative) of the HPCI
Strategic Program (SPIRE) of the Ministry of Education, Culture,
Sports, Science and Technology of Japan. We
are thankful to Japan Advanced Institute of Science and Technology
(JAIST) for the computational resources. We also thank Prof.
Katsumi Hagita of National Defense Academy of Japan
for helpful discussions and contribution to the r2c 3-D interface.
Feedback
Please
feel free to drop us a line at duytvt@issp.u-tokyo.ac.jp (Truong Vinh
Truong Duy) or t-ozaki@issp.u-tokyo.ac.jp (Taisuke Ozaki) for
questions, comments, suggestions, and bug reports.
Last updated: March 31, 2015.