为什么cuda设备计数为零?

mat*_*ato -1 c++ cuda

我正在编写一个简单的代码,尝试获取设备数量。

#include <cuda.h>
#include <iostream>

int main(){

  CUcontext cudaContext;
  int deviceCount = 0;
  CUresult result = cuDeviceGetCount(&deviceCount);
  std::cout << "device count = " << deviceCount << std::endl;

}
Run Code Online (Sandbox Code Playgroud)

编译命令:g ++ test.cpp -lcuda

当我尝试获取设备的计数时,即使我有gpu,我也得到零。

还是应该为零?

Rob*_*lla 5

您在此处使用CUDA 驱动程序API

驱动程序API代码应以开头cuInit(0);。如果您不这样做,则使用驱动程序API可能会返回错误代码,例如初始化错误。

您可能需要研究CUDA驱动程序API示例代码,例如vectorAddDrv