FFTW FAQ - Section 5
Known bugs

Question 5.1. FFTW 1.1 crashes in rfftwnd on Linux.

This bug was fixed in FFTW 1.2. There was a bug in rfftwnd causing an incorrect amount of memory to be allocated. The bug showed up in Linux with libc-5.3.12 (and nowhere else that we know of).

Question 5.2. The MPI transforms in FFTW 1.2 give incorrect results/leak memory.

These bugs were corrected in FFTW 1.2.1. The MPI transforms (really, just the transpose routines) in FFTW 1.2 had bugs that could cause errors in some situations.

Question 5.3. The test programs in FFTW 1.2.1 fail when I change FFTW to use single precision.

This bug was fixed in FFTW 1.3. (Older versions of FFTW did work in single precision, but the test programs didn't--the error tolerances in the tests were set for double precision.)

Question 5.4. The test program in FFTW 1.2.1 fails for n > 46340.

This bug was fixed in FFTW 1.3. FFTW 1.2.1 produced the right answer, but the test program was wrong. For large n, n*n in the naive transform that we used for comparison overflows 32 bit integer precision, breaking the test.

Question 5.5. The threaded code fails on Linux Redhat 5.0

We had problems with glibc-2.0.5. The code should work with glibc-2.0.7.

Question 5.6. FFTW 2.0's rfftwnd fails for rank > 1 transforms with a final dimension >= 65536.

This bug was fixed in FFTW 2.0.1. (There was a 32-bit integer overflow due to a poorly-parenthesized expression.)

Question 5.7. FFTW 2.0's complex transforms give the wrong results with prime factors 17 to 97.

There was a bug in the complex transforms that could cause incorrect results under (hopefully rare) circumstances for lengths with intermediate-size prime factors (17-97). This bug was fixed in FFTW 2.1.1.

Question 5.8. FFTW 2.1.1's MPI test programs crash with MPICH.

This bug was fixed in FFTW 2.1.2. The 2.1/2.1.1 MPI test programs crashed when using the MPICH implementation of MPI with the ch_p4 device (TCP/IP); the transforms themselves worked fine.

Question 5.9. FFTW 2.1.2's multi-threaded transforms don't work on AIX.

This bug was fixed in FFTW 2.1.3. The multi-threaded transforms in previous versions didn't work with AIX's pthreads implementation, which idiosyncratically creates threads in detached (non-joinable) mode by default.

Question 5.10. FFTW 2.1.2's complex transforms give incorrect results for large prime sizes.

This bug was fixed in FFTW 2.1.3. FFTW's complex-transform algorithm for prime sizes (in versions 2.0 to 2.1.2) had an integer overflow problem that caused incorrect results for many primes greater than 32768 (on 32-bit machines). (Sizes without large prime factors are not affected.)

Question 5.11. FFTW 2.1.3's multi-threaded transforms don't give any speedup on Solaris.

This bug was fixed in FFTW 2.1.4. (By default, Solaris creates threads that do not parallelize over multiple processors, so one has to request the proper behavior specifically.)

Question 5.12. FFTW 2.1.3 crashes on AIX.

The FFTW 2.1.3 configure script picked incorrect compiler flags for the xlc compiler on newer IBM processors. This is fixed in FFTW 2.1.4.
Back: Internals of FFTW.
Return to contents.

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.