Developer Reference for Intel® oneAPI Math Kernel Library for Fortran

ID 766686
Date 10/31/2024
Public
Document Table of Contents

Building an Application With FFTW3 Interface Wrappers

Normally, the only change needed to build your application with FFTW3 wrappers replacing original FFTW library is to add Intel® oneAPI Math Kernel Library (oneMKL) at the link stage (see section"Linking Your Application with Intel® oneAPI Math Kernel Library" in the Intel® oneAPI Math Kernel Library (oneMKL) Developer Guide).

If you recompile your application, add subdirectory include\fftw to the search path for header files to avoid FFTW3 version conflicts.

Sometimes, you may have to modify your application according to the following recommendations:

  • The application requires

    #include "fftw3.h" ,

    which it probably already includes.

  • The application does not require

    #include "mkl_dfti.h" .

  • The application does not require

    #include "fftw3_mkl.h" .

    It is required only in case you want to use the MKL_RODFT00 constant.

  • If the application does not check whether a NULL plan is returned by plan creation functions, this check must be added, because the FFTW3 to Intel® oneAPI Math Kernel Library (oneMKL) wrappers do not provide 100% of FFTW3 functionality.