cuFFT: 1D FFT in 3D Matrix - Is it possible ?


I have a 3D matrix in global memory. Each element is cufftComplex.
The matrix size is: 1024(Y) x 4096(X) x 12(Z)
The matrix contains 1024 x 12 vectors. Each vector contais 4096 complex samples.

Is it possible to use cuFFT to run 1D FFT on all vectors in this matrix ?

I called:

int nCol[1] = {N_VEC};
cufftPlanMany (&plan, 1, nCol, //plan, rank, n
nCol, VEC_LEN, 1, //inembed, istride, idist
nCol, VEC_LEN, 1, //onembed, ostride, odist
CUFFT_C2C, VEC_LEN) //type, n_batch

to run 1D FFT on VEC_LEN columns. Each column contains N_VEC elements.
A matrix row is consecutive in global memory.
It works fine.

Should I change only n_batch ?

Thank you,