/* * This file is part of the StarPU Handbook. * Copyright (C) 2009--2011 Universit@'e de Bordeaux * Copyright (C) 2010, 2011, 2012, 2013 CNRS * Copyright (C) 2011, 2012 INRIA * See the file version.doxy for copying conditions. */ /*! \page FFTSupport FFT Support StarPU provides libstarpufft, a library whose design is very similar to both fftw and cufft, the difference being that it takes benefit from both CPUs and GPUs. It should however be noted that GPUs do not have the same precision as CPUs, so the results may different by a negligible amount. Different precisions are available, namely float, double and long double precisions, with the following fftw naming conventions: The documentation below is given with names for double precision, replace starpufft_ with starpufftf_ or starpufftl_ as appropriate. Only complex numbers are supported at the moment. The application has to call starpu_init() before calling starpufft functions. Either main memory pointers or data handles can be provided. All functions are defined in \ref API_FFT_Support. \section Compilation Compilation The flags required to compile or link against the FFT library are accessible with the following commands: \verbatim $ pkg-config --cflags starpufft-1.3 # options for the compiler $ pkg-config --libs starpufft-1.3 # options for the linker \endverbatim Also pass the option --static if the application is to be linked statically. */