Hello. I am new to CUDA and cuFFT, worked earlier with FFTW. I have a question about how to manipulate complex numbers of cuFFT, for example I would like to zero complex part? What about precision of the transform?

There are plenty of CUFFT sample codes. You may want to study them.

Zeroing the complex part can by done by setting the .y component of each element to zero. Precision of the transform is determined by the type, e.g. CUFFT_C2C is float-complex transform. CUFFT_D2D is double complex transform.

You should also refer to the CUFFT documentation.

I think calling that the imaginary part would be more accurate and less confusing. A complex number is basically a struct consisting of the real part followed by the imaginary part. This storage arrangement is shared by C, C++, Fortran, and CUDA.

Yes, that is it, thank you. Unfortunately, my English doesn’t allow me to read the documentation fast. May I ask one more question? Does BATCH stand for parallel processing, so that I put several data sets - one by one, all in a single array?

Yes, batching allows you to group a set of like transforms together, and transform them “all at once” with a single function call.

Thanks a lot