【发布时间】:2014-07-22 17:41:33
【问题描述】:
我尝试使用 cuda-gdb 调试我的 CUDA 应用程序,但出现了一些奇怪的错误。
我设置选项-g -G -O0 来构建我的应用程序。我可以在没有 cuda-gdb 的情况下运行我的程序,但没有得到正确的结果。因此我决定使用 cuda-gdb,但是,在使用 cuda-gdb 运行程序时出现以下错误消息
Error: Failed to read the valid warps mask (dev=1, sm=0, error=16).
这是什么意思?为什么是sm=0,error=16是什么意思?
更新 1:我尝试将 cuda-gdb 用于 CUDA 示例,但由于同样的问题而失败。我刚刚安装了 CUDA 6.0 Toolkit,然后是 NVIDIA 的说明。是不是我的系统问题?
更新 2:
- 操作系统 - CentOS 6.5
- 图形处理器
- 1 Quadro 400
- 2特斯拉C2070
- 我的程序只使用了 1 个 GPU,但我选择的任何 GPU 都收到相同的错误消息
- CUDA 版本 - 6.0
- GPU 驱动程序
- NVRM 版本:NVIDIA UNIX x86_64 内核模块 331.62 Wed Mar 19 18:20:03 PDT 2014
- GCC 版本:gcc 版本 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC)
更新 3: 我试图在 cuda-gdb 中获取更多信息,但得到以下结果
(cuda-gdb) info cuda devices
Error: Failed to read the valid warps mask (dev=1, sm=0, error=16).
(cuda-gdb) info cuda sms
Focus not set on any active CUDA kernel.
(cuda-gdb) info cuda lanes
Focus not set on any active CUDA kernel.
(cuda-gdb) info cuda kernels
No CUDA kernels.
(cuda-gdb) info cuda contexts
No CUDA contexts.
【问题讨论】:
-
您可能想要提交一份 nvidia 错误报告。这是the link to do it,但您需要先成为logged in as a registered developer。最好的情况是您可以提供一个简短的程序来重现问题,并提供您的确切机器配置(操作系统、CUDA 版本、GPU、GPU 驱动程序等)以及演示问题所需的任何 cuda-gdb 命令.
-
更新了细节。我可以从 NVIDIA 运行示例应用程序,但
cuda-gdb也不起作用,这意味着在没有调试器的情况下运行程序是可以的。