Node:Installation and Supported Hardware/Software, Next:Usage of Multi-threaded FFTW, Previous:Multi-threaded FFTW, Up:Multi-threaded FFTW
All of the FFTW threads code is located in the threads
subdirectory of the FFTW package. On Unix systems, the FFTW threads
libraries and header files can be automatically configured, compiled,
and installed along with the uniprocessor FFTW libraries simply by
including --enable-threads
in the flags to the configure
script (see Installation on Unix).
The threads routines require your operating system to have some sort of
shared-memory threads support. Specifically, the FFTW threads package
works with POSIX threads (available on most Unix variants, from
GNU/Linux to MacOS X) and Win32 threads. We also support using
OpenMP or SGI MP compiler directives to
launch threads, enabled by using --with-openmp
or
--with-sgimp
in addition to --enable-threads
. (This may
be useful if you are employing that sort of directive in your own code,
in order to minimize conflicts.) If you have a shared-memory machine
that uses a different threads API, it should be a simple matter of
programming to include support for it; see the file
fftw_threads-int.h
for more detail.
Ideally, of course, you should also have multiple processors in order to get any benefit from the threaded transforms.