【问题标题】:cuda-gdb not working in nsight on linuxcuda-gdb 在 Linux 上的 nsight 中不起作用
【发布时间】:2012-10-11 01:44:50
【问题描述】:

我在我的 Ubuntu 12.10 中安装了 cuda 5,它运行良好,我也可以在终端中通过 cuda-gdb 编译和调试。我正在尝试使用 nsight,它可以毫无问题地编译和执行我的代码,但是当我尝试调试时出现以下错误

Error in final launch sequence
Failed to execute MI command:
-gdb-set cuda api_failures ignore
Error message from debugger back end:
Undefined set cuda command: "api_failures ignore".  Try "help set cuda".
Undefined set cuda command: "api_failures ignore".  Try "help set cuda".

我正在使用 ubuntu 12.10 64 位并使用 optirun (bumblebee) 启动 cuda 可执行文件和 nsight,因为我有 GTX 675M (optimus)。我通过 apt-get 安装了 cuda-gdb,我得到了 4.2 版:

frederico@zeus:~/Dropbox/coisas/projetos/delta_cuda$ cuda-gdb --version
NVIDIA (R) CUDA Debugger
4.2 release
Portions Copyright (C) 2007-2012 NVIDIA Corporation
GNU gdb (GDB) 7.2

我认为这不是问题,因为我可以单独使用它(无需 nsight)。我也将 nsight 更改为使用 optirun 启动 cuda-gdb,但仍然收到相同的错误。

【问题讨论】:

    标签: linux cuda nsight cuda-gdb optimus


    【解决方案1】:

    问题出在 cuda-gdb 的版本上,我必须使用 cuda-gdb 版本 5。它带有工具包版本 5,只是对 /usr/bin 进行了符号舔,它就可以工作了。

    【讨论】:

    • 您收到此消息是因为 Nsight 尝试运行仅在 CUDA 5.0 中引入的较新的 cuda-gdb 命令之一。
    • 您的解决方案有效,但很难在您不是管理员的多用户系统上设置。大多数时候,系统管理员不愿意在/usr/bin 中添加指向/opt 的链接...
    【解决方案2】:

    可以用 nsight 和 bumblebee 调试 CUDA 程序。 (nsight v.5.0.0, bumblebee 3.2.1, Debian sid)

    您只需将调试器命令行 (CUDA GDB Executable) 替换为: 项目资源管理器 -> 右键单击​​您的项目 -> 选择“调试为” -> 单击“调试配置...” -> 选择“调试器”选项卡

    CUDA GDB 可执行文件:optirun --no-xorg cuda-gdb (另一种可能性是制作一个小的 shell 脚本,如下所示:/usr/bin/opti-cuda-gdb

    #!/bin/bash
    optirun --no-xorg /usr/bin/cuda-gdb $*
    

    这种方式 optirun 不会为 gdb 启动虚拟屏幕,GPU 不接受图形并且可以进行调试。

    希望有帮助!

    【讨论】:

      【解决方案3】:

      无需创建此链接。

      您可以在 Run/Debug Configurations... 菜单中选择 nsight 使用的 cuda-gdb 可执行文件。 在此菜单中,单击 C/C++ Application 下的应用程序,然后选择 Debugger 选项卡,您可以在其中浏览文件系统并将路径设置为 cuda-gdb-5.0可执行文件。

      【讨论】:

      • 那行得通。但是,对我而言,将其设置为所有用户比向管理员解释情况要大
      • 我再次不同意。因为如果每个用户都使用 cuda-gdb-5.0,那么它应该安装在默认位置,或者用户 PATH 应该相应地更新到该位置。不过,享受cuda-gdb :)
      猜你喜欢
      • 2012-10-11
      • 1970-01-01
      • 2013-12-15
      • 2014-05-17
      • 1970-01-01
      • 2011-10-06
      • 1970-01-01
      • 1970-01-01
      • 2017-04-15
      相关资源
      最近更新 更多