Binding 如何使用Fortran 90中的CUFFT?

Binding 如何使用Fortran 90中的CUFFT?,binding,cuda,fortran,fft,fortran90,Binding,Cuda,Fortran,Fft,Fortran90,如何在用Fortran 90编写的程序中使用Cuft库(来自nVidia的CUDA SDK 4.0.13),据我所知,它只有C绑定(将使用GNU编译器第4.4.5节中的gfortran编译) 我对一维和二维FFT计算都感兴趣。您需要一个C源文件作为委托,该文件遵循一种特殊的命名机制,用于可从Fortran调用的函数。在委托函数中,调用CudaFFT函数 详情可在此找到: 该教程是关于旧版Fortran 77的。我特别询问了Fortran 90,它有接口关键字和iso_c_绑定模块。@Jakub:

如何在用Fortran 90编写的程序中使用Cuft库(来自nVidia的CUDA SDK 4.0.13),据我所知,它只有C绑定(将使用GNU编译器第4.4.5节中的
gfortran
编译)


我对一维和二维FFT计算都感兴趣。

您需要一个C源文件作为委托,该文件遵循一种特殊的命名机制,用于可从Fortran调用的函数。在委托函数中,调用CudaFFT函数

详情可在此找到:


该教程是关于旧版Fortran 77的。我特别询问了Fortran 90,它有
接口
关键字和
iso_c_绑定
模块。@Jakub:Fortran 2003年才引入
iso_c_绑定
模块。您明确指定了fortran 90。如果你的project允许你使用
iso_c_binding
,那绝对是正确的选择,既然你知道这一点,我就不明白你问题的重点;答案很简单(你似乎已经知道)“使用
iso__绑定
”。我刚刚开始使用新的Fortran功能(我以前使用过Fortran 77),所以我不知道
iso__绑定
bind(c,name='foo')
是Fortran 2003的功能。