I am working now in Beowulf Cluster and parallel processing, I want code for Fast Fourier transfer functions written in any language, e.g., C/C++. Without using FFTW library based on message passing interface method.
-
1$\begingroup$ Why don't you want to use FFTW? $\endgroup$– Bill BarthCommented Mar 17, 2015 at 22:36
-
$\begingroup$ because I just want to use it as simple code just for testing .....do you have any suggestion about that or any motivation to use this library ?? $\endgroup$– sepeeeCommented Mar 17, 2015 at 23:15
-
7$\begingroup$ FFTW can be used in 3 or 4 lines for the most basic transform. I'd use it. It's the standard. If you want something simpler, try fft()/ifft() in MATLAB or Octave. You don't have to use the MPI/cluster portions of FFTW. $\endgroup$– Bill BarthCommented Mar 18, 2015 at 0:17
-
5$\begingroup$ Nothing is simpler than reusing a high-quality library written by experts and thoroughly validated by thousands of users over many years. Nothing. $\endgroup$– Jeff HammondCommented May 14, 2015 at 2:39
1 Answer
I would definitely advise going FFTW-route anyway. FFTW is a high-quality library with good documentation that can be used in a convenient way in your project without requiring many modifications or lots of additional code.
However, since you explicitly asked about an FFTW alternative, you can go Intel MKL route. Now, Intel Math Kernel Library offers Fourier Transform functions both for serial/shared memory, as well as for distributed memory cases.
Moreover, Intel MKL supports FFTW3 interfaces (at least for shared memory), so that you have an option of using FFTW through Intel MKL anyway.