1
我遇到了CUDA FFT库的一些问题。双精度CUFFT
我将输入声明为cuDoubleComplex,但编译器返回此类型与cufftComplex类型的参数不兼容的错误。在通过互联网搜索之后,我找到了文件cufft.h,其中有这一行。我的问题是,在库cuComplex.h显然,cuComplex有一个浮点精度(typedef cuFloatComplex cuComplex;
),但我想双精度。
这可能吗?
特别是,我得到如下:
error: argument of type "cufftDoubleComplex *" is incompatible with parameter of type "cufftComplex *"
在这一行:
cufftExecC2C(plan, data1, data2, CUFFT_FORWARD);
什么函数调用会产生编译错误? CUFFT具有明确的“cufftDoubleComplex”类型和“CUFFT_D2Z”,“CUFFT_Z2D”和“CUFFT_Z2Z”操作,用于双倍复合,双倍复合倍增和双倍复合倍数复合调用。你还没有完全清楚问题出在哪里。 – talonmies
当我尝试使用nvcc编译代码时,我得到错误'错误:没有从“cuComplex”到“cuDoubleComplex”的合适的用户定义转换存在' – Pippo
是的,但*其中*代码中没有显示。什么操作或函数调用会产生错误? – talonmies