c – CUDA cudaMalloc

我已经开始编写一个新的CUDA应用程序了.但是我沿途遇到了一个有趣的绕道而行.
在变量x上调用第一个cudaMalloc,第一次失败.但是,当我第二次调用它时,它会返回cudaSuccess.最近升级到CUDA 4.0 SDK,这是一个非常奇怪的错误.

我甚至做了一些测试,似乎cudaMalloc的第一次调用失败了.

解决方法:

对任何cuda库函数的第一次调用启动初始化子例程.可能会发生以某种方式初始化失败而不是cudaMalloc本身. (CUDA编程指南,第3.2.1节)

不知何故,稍后,尽管最初的失败,它似乎仍然有效.我不知道你的设置和你的代码所以我不能真正帮助你.查看编程指南!

上一篇:c – CUDA流销毁和CudaDeviceReset


下一篇:c – 关于CUDA的架构(SM,SP)