FFTW FAQ - Section 5
Known bugs


Question 5.1. FFTW 1.1 crashes in rfftwnd on Linux.

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), and has been fixed in FFTW 1.2.

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

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

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.)

* The MPI distributed-memory transforms must be modified to work in single precision. In the transpose_mpi directory, replace all occurrences of double with float (or whatever precision you are using), and replace MPI_DOUBLE with MPI_FLOAT (or the appropriate type constant for your 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.)
Back: Internals of FFTW.
Return to contents.

Matteo Frigo and Steven G. Johnson / fftw@theory.lcs.mit.edu - 28 September 1998

Extracted from FFTW Frequently Asked Questions with Answers, Copyright © 1998 Massachusetts Institute of Technology.