cuda-gdb错误信息

时间:2014-06-02 14:48:26

标签: cuda cuda-gdb

我尝试使用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

  • OS - CentOS 6.5
  • GPU
    • 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.

2 个答案:

答案 0 :(得分:2)

这是内部cuda-gdb错误。你应该报告一个错误。

您可以尝试从NVIDIA网站上的软件包安装CUDA工具包吗?

答案 1 :(得分:1)

实际上,这个问题仅针对一些旧的NVIDIA GPU(如" Quadro 400"," GeForce GT220"或" GeForce GT 330M"等等) )。

在Liam Kim的设置中,cuda-gdb应该可以通过设置环境变量" CUDA_VISIBLE_DEVICES"来运行,并让cuda-gdb专门在Tesla C2070 GPU上运行。 即 $ export CUDA_VISIBLE_DEVICES = 0(或2) - 通过运行cuda sample - " deviceQuery"可以找到确切的CUDA设备索引。

现在,这个问题已得到修复,CUDA开发人员可以在下一个CUDA版本中找到解决方案(它将在2014年7月初左右发布)。