
On Mon, Jan 27, 2014 at 1:31 AM, Ian Ross
I'm happy to announce the first release of arb-fft, a pure Haskell FFT implementation for arbitrary length vectors: http://hackage.haskell.org/package/arb-fft
This is probably more of pedagogical interest than anything else, since there's a long series of blog articles describing the development of the package, indexed at http://skybluetrades.net/haskell-fft-index.html
The package has some interesting features beyond the usual "textbook" powers-of-two FFT algorithm. In particular, it uses a mixed-radix decomposition of composite input lengths, uses Rader's algorithm for large prime factors and has an empirical benchmarking scheme using Criterion for FFT plan selection.
The performance of arb-fft is within a factor of 10 of FFTW for most input sizes, which isn't too bad for a pure Haskell with only a relatively limited amount of work done on optimisation.
Commentary is very welcome, as are offers to help with any of the tasks listed in the last blog article: http://skybluetrades.net/blog/posts/2014/01/27/data-analysis-fft-14.html
Hackage: http://hackage.haskell.org/package/arb-fft GitHub: https://github.com/ian-ross/arb-fft Blog article index: http://skybluetrades.net/haskell-fft-index.html
Thanks, I've noticed the posts but hadn't had time to devote to them last semester. Now that I'm more free, I look forward to digging into them and, mayhaps, offering some optimization patches. -- Live well, ~wren