Alea GPU 中的 cuFFT

cuFFT in Alea GPU

我正在使用 Alea GPU 使用 C# 语言在 GPU 上进行编程。我在 Visual Studio 2017 项目上安装了 Alea 3.0.4,但我找不到一些 cuFFT 库。在 NVidia 的网站上,cuFFT 是 CUDA 工具包的一部分,因此我不需要下载额外的 CUDA 库。我是否需要下载一些额外的绑定或者可以将 cuFFT 与 Alea GPU 一起使用?

您要搜索的绑定在这里: https://www.nuget.org/packages/Alea.CudaToolkit/

为了使这些工作正常,您需要在您的机器上安装 CUDA Tooklit。 (v7.5 或更高版本)

这是一个如何使用它的例子:

using Alea.CudaToolkit;

int plan;
int padSize = ...
SafeCall(CuFFT.cufftPlan1d(&plan, padSize, cufftType_t.CUFFT_C2C, 1));

或...

using Alea.CudaToolkit;

int handle;
SafeCall(CuFFT.cufftCreate(&handle));

SafeCall 定义为:

private static void SafeCall(cufftResult_t status)
{
    if (status != cufftResult_t.CUFFT_SUCCESS)
    {
        throw new InvalidOperationException(status.ToString());
    }
}