CUFFT和FFTW数据结构:cufftComplex和fftw_complex是否可以互换?

时间:2013-05-12 20:04:28

标签: cuda gpu fft fftw

我有一些代码用FFTW执行正向和反向FFT。我正在努力移植一些代码以使用NVIDIA CUFFT。

为了验证我的基于CUFFT的部分是否正常工作,我想将CUFFT输出与参考FFTW输出区分开来用于正向FFT。实现此差异的一个挑战是两个库中的complex数据结构:CUFFT具有cufftComplex,而FFTW具有fftwf_complex

cufftComplexfftwf_complex是否可互换(例如,我可以将CUFFT数据类型转换为与FFTW兼容)吗?或者,我是否需要在两种数据类型之间进行转换?

1 个答案:

答案 0 :(得分:2)

在这两种情况下,底层数据结构只是一对浮点数。您应该能够使用C ++ reinterpret_cast机制将指针转换为cufftComplexfftwf_complex的主机数组,反之亦然。