使用rocFFT 时,第一次调用
hipfftExecD2Z(plan, cu_psi_in.Data(), cu_psi_out.Data(), HIPFFT_FORWARD)
时间要
Time for FFTforward 1 = 5.8231056
其它调用只需10-5s
Time for FFTforward 2 = 2.4271e-05
Time for FFTforward 3 = 2.3311e-05
...
但是Nvidia GPU使用cuFFT所有计算步骤计算时间一致。
我们的计算FFT计算最先调用DCU设备,这是启动DCU卡的时间,需要这么长时间?

暂无数据
rocFFT会根据size来生成最优的kernel然后编译运行,所以第一次时间比较长。第二次就可以复用程序,所以时间就正常了。