cuFFT 1d and texture memory

I use cuFFT library to calculate FFT of 1D complex arrays.

I create plan:

cufftPlan1d(&plan, size, CUFFT_C2C, 1);

I use global memory to store data. I copy data from my RAM to Device using:

cudaMemcpy(cudaBuf, ramSrc, count, cudaMemcpyHostToDevice);

Then I execute:

cufftExecC2C(plan, cudaBuf, cudaBuf, CUFFT_FORWARD)

The questions are:
Could I use texture memory (1 dimension) and load data to texture memory instead of global memory, and then use this memory as input for cufftExecC2C() function?
Could cuFFT library work with texture memory?

I know that texture memory is stored in global memory but I can not understand how could I use it with cuFFT (if it is possible).


I use Tesla M2090.

From what I understand about textures you bind them to an array which resides in the global memory. The binded array is heavily cached, but I do not think you can do much with it except fetching. After each kernel call the texture is updated with the new values. I think it only works if you call cufft with that array as an argument.

Why would you want to do that? If for performance reasons then CUFFT already does that for you.