使用nsight进行调试

时间:2011-05-02 10:51:36

标签: c++ c cuda nsight

我正在使用NSight来调试我的CUDA代码,我有疑问: 如何为特定线程和块设置断点?

当我在内核上放置断点时,调试器总是在块0的线程0处停止。

2 个答案:

答案 0 :(得分:8)

正如在Nsight的在线帮助中所讨论的那样,您可以设置断点并使其以块和线程ID为条件,如下所示:

在CUDA C断点上设置块或线程条件:

  1. 在一行源代码上设置断点。
  2. 右键单击断点。
  3. 从下拉菜单中选择条件...
  4. 类型:

    @blockIdx(0,2,0)&& @threadIdx(5,0,0)

  5. 单击“确定”。断点字形显示加号。

答案 1 :(得分:4)

尝试使用CUDA Debug Focus。你可以调试你想要的任何块中的任何线程......