CUDA Nsight Debug Focus, Visual Studio 2012 Edition

CUDA Nsight Debug Focus, Visual Studio 2012 Edition

本文关键字:Studio 2012 Edition Visual Nsight Debug Focus CUDA      更新时间:2023-10-16

我正在做一个项目,包括使用Visual Studio 2012和CUDA Development,并集成了insight调试环境。我可以很容易地看到GPU上的线程高达threadadix == 128,然而,当我试图看到具有更高索引的线程时,这意味着除了第一个块之外的块,使用通过CUDA调试焦点达到的调试焦点对话框,我有困难,切换到其他块。这是"洞察号"的正常操作吗?请回答。谢谢所有。

我找到了一种方法来查看索引高于零的块,您只需要做的是将cuda程序中的所有断点设置为条件,然后启动Nsight调试环境。然后它也会显示其他块。然而,我认为这也与驻留在GPU上的流多处理器的数量有关。据我所知,流多处理器的数量等于可以同时运行的块的数量。我已经使用了一段时间的GeForce GT630,它只有一个流多处理器,这就是为什么我只看到第一个块运行,而不是其他的。但是,调试仍然很慢。

Hi切换块是night中常见的操作,请按照以下步骤操作

  1. 启动cuda应用程序,等待直到一个bp被击中。
  2. 通过"Visual studio -> insight -> windows -> CUDA Info"打开"CUDA Info"窗口
  3. 将页面切换到block,你可以看到当前应用中所有启动的block。
  4. 双击每一行,可以切换到另一个块。
  5. 你可以对经纱和线程做同样的操作