fftw3 for DEBIAN ---------------------- Some of the changes made for version 3 of FFTW necessitated changes to the API, so you will need to make (minor) changes when moving existing programs to this version. See the documentation (in package fftw3-doc) for details. In fftw2 separate packages included optimizations for SIMD instructions. In fftw3 all such optimizations (x86 and powerpc) are included in the regular libraries. The routines should automatically detect the capabilities of your processor. Also, the package contains three different precision versions (single and double as before, plus a new long double version). The -dev version of a package contains the headers and a statically linked copy of the libraries. You need to install this if you intend to compile a program which uses fftw. Be careful when compiling against the static libs as the library linker (ld) looks for shared libraries first. Some people prefer to use static libraries as there can be a speed advantage (3-30%) on register starved architectures (like x86 machines). The package also contains a threaded version of fftw. Using the threaded version is almost identical to using the non- threaded version, but the function calls are renamed and you need to call a special function first to handle some housekeeping. See the documentation for details. To top it all off, you can call fftw from fortran. See the docs at /usr/share/doc/fftw3-doc/html/Calling-FFTW-from-Fortran.html (needs package fftw-doc installed). Checking the fftw library for correctness ----------------------------------------- A 'make check' is run during the Debian build. This runs a number of tests on the library but does not test all aspects of fftw. Some users may want to run more complete checks on the library. Unfortunately, it is difficult to compile or run the checks outside the source so a precompiled binary is not included with the package. To enable users to check the library for correctness, the instructions for compiling the source are included here: apt-get source fftw3 (you need a deb-src line in /etc/apt/sources.list) cd fftw3-3.0 Run the configure line from debian/rules appropriate for your architecture and the precision you would like to test. For example, to run the double precision tests on an x86 machine you would run: ./configure --prefix=/usr --enable-shared --enable-threads --enable-sse2 Then compile the source and go into the tests directory: make cd tests You are now ready to run the tests. You can run individual tests yourself or you can run the automated tests. For details on running tests yourself, read the README file. There are three choices for the automated tests: make check (takes a few minutes) make bigcheck (takes hours to run) make paranoid-check (you tell me how long it takes) James A. Treacy , Thu, 24 Apr 2003 21:42:20 -0500