0

我正在尝试对 CUDA 使用动态并行性,但我无法完成编译步骤。

我正在使用具有 Compute Capability 3.5 和 CUDA 7.5 版的 GPU。

根据我使用的编译命令中的开关,我收到不同的错误消息,但使用文档

  • 我到达了导致成功编译的一行:

    nvcc -arch=compute_35 -rdc=true cudaDynamic.cu -o cudaDynamic.out -lcudadevrt
    

    但是当程序启动时,所有程序都失败了。使用 CUDA-memcheck,每次调用 API 函数,我都会收到相同的错误消息:

    ========= CUDA-MEMCHECK
    ========= Program hit cudaErrorUnknown (error 30) due to "unknown error" on CUDA API call to ...
    
  • 我也尝试过这一行(取自 CUDA 动态示例 makefile):

    nvcc -ccbin g++ -I../../common/inc -m64 -dc -gencode arch=compute_35,code=compute_35 -o cudaDynamic.out -c cudaDynamic.cu
    

    但在执行后,我得到:

    cudaDynamic.out: Permission denied
    

我想了解如何正确编译 CUDA 动态代码,因为到目前为止我尝试过的所有其他编译行都失败了。

4

1 回答 1

0

我通过完全重新安装 CUDA 解决了这个问题。

我现在能够编译 CUDA 示例和我自己的代码。

于 2016-06-24T11:49:48.237 回答