Bindings to the FFTW library. (fork of thielema's fft)


This package provides bindings to the FFTW library.

You will need to install FFTW version 3, including development files before this
package.  Consult your package manager or visit to install FFTW.
In addition, the Haskell package carray is required.

  runhaskell Setup.lhs configure
  runhaskell Setup.lhs build
  runhaskell Setup.lhs haddock          (optional)
  runhaskell Setup.lhs install

Then run the tests:

  runhaskell tests/tests.hs

We use the CArray package for multi-dimensional arrays.  It allocates pinned
memory on the GC'd heap, which is 16-byte aligned by default, allowing SIMD
instructions.  If you get a CArray from a foreign source using
unsafeForeignPtrToCArray (an O(1) operation) then you must be sure that the
memory is aligned if you expect SIMD code to be used by FFTW.

A note regarding licensing: FFTW is generally distributed under the GPL,
although a different license can be purchased.  Therefore, the fact that these
bindings are BSD licensed does not mean you can link against a GPL'd copy of
FFTW without complying with the GPL.