Contesting the mixed-radix decimation-in-time fast Fourier transform implementation of DSP::FFT
First of all, why use DSP::FFT when there are already other popular implementations?
- Works in WebAssembly. See example2 for DSP::FFT in action.
- License is 0BSD.
- Easy to include in your project.
- Fast enough.
The only restriction of DSP::FFT is its size, which must be a composite number of:
N = 2^a * 3^b * 5^c * 7^d * 11^e * 13^f * 17^g * 19^h * 23^i * 29^j * 31^k
Comparing double precision performance with various FFT sizes:
More calculations mean larger errors but fortunately they do not grow that fast with increasing FFT size:
The above images are made from data.txt using gnuplot.txt:
./benchmark > data.txt
gnuplot gnuplot.txt

