Firstable I have to say I am worried about the possibility of setting a “Compatibility Mode” to CUFFT_COMPATIBILITY_FFTW_ALL !
Does this mean that something like cufftExecZ2D(…) is not an Inverse Discrete Fourier Transform?
I indeed don’t get the right spatial signal after calling a cufftExecZ2D without having set the “Compatibility Mode” to CUFFT_COMPATIBILITY_FFTW_ALL, which must mean that without it I was not performing the Inverse Discrete Fourier Transform.
Now except for the part where cufft is surely not as effective as people from nvidia tend to make us think since using the CUFFT_COMPATIBILITY_FFTW_ALL dramatically decreases the gain one can get, I can’t manage to get the right result (I mean the one related to the Fourier Transform) with this “Compatibility Mode” when I’m batching the call to cufftExecZ2D…
This is quite bothering since using a batch of 1 I need to use CUFFT_COMPATIBILITY_FFTW_ALL to get correct results. However, if I want to use a batch (of 2 for exemple), then I sometimes need to remove the CUFFT_COMPATIBILITY_FFTW_ALL to get correct results.
I suppose there is something I do wrong as I’ve also found a case where weither I set the FFTW Compatability ON or not I don’t get correct output (I’m using out-of-place execution by the way).
If someone has already faced such a situation then please let me know, I’ll be more than glad to get some clues here… Thanks!