fftw Overview
The ”Fastest Fourier Transform in the West” (FFTW) is a C subroutine library for computing the Discrete Fourier Transform (DFT) in one or more dimensions, of both real and complex data, and of arbitrary input size. Many benchmarks show that FFTW’s performance is typically superior to that of other publicly available FFT software. Moreover, FFTW’s performance is portable: the program will perform well on most architectures without modification.
Support
Usage
On OLCF systems, some FFTW library versions are provided by Cray and some are provided by the OLCF itself. In either case, FFTW is accessed via a module. For more information on Cray FFTWs, please see theintro_fft
man page online; i.e., do a man intro_fft
. This will give you information on how to use Cray’s FFTW and some other FFT libraries. In particular, there are intro_fftw2
and intro_fftw3
man pages for FFTW2 and FFTW3, respectively. C:
module avail fftw module load fftw/2.1.5 cc -o example example.c -ldfftwFor the OLCF-built FFTW3 libraries, you have to load the appropriate module and then the compilers will automatically find include and library files. These are probably not as highly optimized as the Cray FFTW libraries. C:
module avail fftw module load fftw/3.1.2 cc -o example example.cThe following information is available by running
module help fftw
FFTW 3.3.0.0 ============ Purpose: -------- FFTW 3.3.0.0 contains a number of added features and performance improvements including: * Support for AVX instructions * MPI distributed transform * Support for AMD-specific FMA4 instructions. For complete release notes please see http://www.fftw.org/release-notes.html. Product and OS Dependencies: ---------------------------- The FFTW 3.3.0.0 release is supported on Cray XT and XE systems running the CLE operating systems. Documentation: -------------- http://www.fftw.org/index.html#documentation Installation ------------ rpm -ivh fftw-3.3.0.0-2.x86_64.rpm To make this the default version, execute: /opt/cray/admin-pe/set_default_files/set_default_fftw_3.3.0.0 To re-display fftw/3.3.0.0 release information, type: less /opt/fftw/3.3.0.0/release_info
Builds
SUMMIT
- fftw@3.3.5%gcc@4.8.5+openmp
- fftw@3.3.5%xl@20171023-beta+openmp
- fftw@3.3.5%pgi@17.9+openmp
RHEA
- fftw@3.3.5%gcc@4.4.7
- fftw@3.3.5%gcc@5.3.0
- fftw@3.3.5%gcc@5.3.0
- fftw@3.3.5%gcc@4.4.7