在VS2010中使用Nvidia NSight进行CUDA性能分析 - 在时间线上划分

时间:2013-04-30 05:53:04

标签: cuda profiling nvidia nsight

我想知道,假设在应用程序跟踪报告的时间轴视图中只有一个我调用的内核,

流程 - > CUDA - >计算

是我在时间线窗口中可以看到的每个段,表示执行操作的warp?如果是的话,有没有办法让我看到有多少线程参与了这次操作? (我假设它不一定是我在启动内核时指定的数字)

1 个答案:

答案 0 :(得分:1)

在Nsight Visual Studio Edition中,Process \ CUDA \ Context \ Compute行中的每个范围都是内核启动。

  • 范围开始时间戳是执行flatThreadIdx = 0的第一条指令的时间。
  • 范围结束时间戳是内核的完成。

Nsight时间轴不显示低于内核级别(线程块,warp或线程)的信息,因为这将是大量数据。工具提示,时间线底部的相关窗格和CUDA启动报告页面中提供了启动的网格尺寸和块尺寸。

Nsight VSE配置文件CUDA应用程序活动可以收集每个指令计数器,可用于查看执行应用程序中每条指令的线程数。为了收集此项,请将“运行实验”下拉菜单设置为“全部”或将其设置为“自定义”并选择“指令计数”实验。 Source View报告页面将包含已执行的指令和执行的线程指令的列。 (可选)您可以配置指令计数实验,以收集每条指令的活动掩码直方图和谓词直方图。