**Section 1. Introduction and General Information**- Q1.1. What is FFTW?
- Q1.2. How do I obtain FFTW?
- Q1.3. Is FFTW free software?
- Q1.4. What is this about non-free licenses?
- Q1.5. In the West? I thought MIT was in the East?
**Section 2. Installing FFTW**- Q2.1. Which systems does FFTW run on?
- Q2.2. Does FFTW run on Windows?
- Q2.3. My compiler has trouble with FFTW.
- Q2.4. FFTW does not compile on Solaris, complaining about
`const`

. - Q2.5. What's the difference between
`--enable-3dnow`

and`--enable-k7`

? - Q2.6. What's the difference between the fma and the non-fma versions?
- Q2.7. Which language is FFTW written in?
- Q2.8. Can I call FFTW from Fortran?
- Q2.9. Can I call FFTW from C++?
- Q2.10. Why isn't FFTW written in Fortran/C++?
- Q2.11. How do I compile FFTW to run in single precision?
- Q2.12. --enable-k7 does not work on x86-64
**Section 3. Using FFTW**- Q3.1. Why not support the FFTW 2 interface in FFTW 3?
- Q3.2. Why do FFTW 3 plans encapsulate the input/output arrays and not just the algorithm?
- Q3.3. FFTW seems really slow.
- Q3.4. FFTW slows down after repeated calls.
- Q3.5. An FFTW routine is crashing when I call it.
- Q3.6. My Fortran program crashes when calling FFTW.
- Q3.7. FFTW gives results different from my old FFT.
- Q3.8. FFTW gives different results between runs
- Q3.9. Can I save FFTW's plans?
- Q3.10. Why does your inverse transform return a scaled result?
- Q3.11. How can I make FFTW put the origin (zero frequency) at the center of its output?
- Q3.12. How do I FFT an image/audio file in
*foobar*format? - Q3.13. My program does not link (on Unix).
- Q3.14. I included your header, but linking still fails.
- Q3.15. My program crashes, complaining about stack space.
- Q3.16. FFTW seems to have a memory leak.
- Q3.17. The output of FFTW's transform is all zeros.
- Q3.18. How do I call FFTW from the Microsoft language du jour?
- Q3.19. Can I compute only a subset of the DFT outputs?
- Q3.20. Can I use FFTW's routines for in-place and out-of-place matrix
transposition?
**Section 4. Internals of FFTW**- Q4.1. How does FFTW work?
- Q4.2. Why is FFTW so fast?
**Section 5. Known bugs**- Q5.1. FFTW 1.1 crashes in rfftwnd on Linux.
- Q5.2. The MPI transforms in FFTW 1.2 give incorrect results/leak memory.
- Q5.3. The test programs in FFTW 1.2.1 fail when I change FFTW to use single precision.
- Q5.4. The test program in FFTW 1.2.1 fails for n > 46340.
- Q5.5. The threaded code fails on Linux Redhat 5.0
- Q5.6. FFTW 2.0's rfftwnd fails for rank > 1 transforms with a final dimension >= 65536.
- Q5.7. FFTW 2.0's complex transforms give the wrong results with prime factors 17 to 97.
- Q5.8. FFTW 2.1.1's MPI test programs crash with MPICH.
- Q5.9. FFTW 2.1.2's multi-threaded transforms don't work on AIX.
- Q5.10. FFTW 2.1.2's complex transforms give incorrect results for large prime sizes.
- Q5.11. FFTW 2.1.3's multi-threaded transforms don't give any speedup on Solaris.
- Q5.12. FFTW 2.1.3 crashes on AIX.

Matteo Frigo and Steven G. Johnson / fftw@fftw.org - 04 March 2014

Extracted from FFTW Frequently Asked Questions with Answers, Copyright © 2014 Matteo Frigo and Massachusetts Institute of Technology.