写了一个高分辨迭代算法,其迭代过程中涉及到多次的正反傅里叶变换;一开始写了C++的代码,迭代效果还不错,使用的fftw3.h这个C语言端的傅里叶变换库,但是使用的时间较长,因此尝试使用CUDA对其加速。
在CUDA端进行傅里叶变换可以使用cufft.h库,根据C++编写一个global函数,封装在.cuh头文件中,但在调用时发生错误如下:
意思是cufft的句柄、执行函数等是主机端的函数,只能通过主机端进行调用。由于在迭代过程中实现加速必须保证在GPU实现傅里叶正反变换,因此想要通过CUDA加速貌似是不行的了,只有再想想办法!o(╥﹏╥)o