CUDA Nsight - 找出内核/运行时 api 调用之间的 CPU 在做啥

Posted

技术标签:

【中文标题】CUDA Nsight - 找出内核/运行时 api 调用之间的 CPU 在做啥【英文标题】:CUDA Nsight - find out what CPU is doing between kernel/runtime api callsCUDA Nsight - 找出内核/运行时 api 调用之间的 CPU 在做什么 【发布时间】:2013-07-03 07:13:53 【问题描述】:

我想知道是否有任何方法可以在 Nsight 中发现两个运行时 API/驱动程序或内核调用之间的 CPU 函数调用(一张图像值一千字):

有可能吗?

【问题讨论】:

【参考方案1】:

使用NVIDA Tools Extension API,您可以在 Nsight VSE 分析器显示中获取有关 CPU 活动(除了 GPU 活动)的各种信息。

Nsight VSE 3.0 文档中提供了各种示例。

same API 与 standalone visual profiler -- nvvp 配合使用。

【讨论】:

谢谢,我不知道! @David 在跟踪设置下的分析活动编辑器中,您可以启用系统跟踪提供程序和子选项 CPU 线程跟踪。这会将线程状态行添加到时间轴中。此行可用于确定线程在 1ms 空白间隔期间是否正在运行、休眠或阻塞。

以上是关于CUDA Nsight - 找出内核/运行时 api 调用之间的 CPU 在做啥的主要内容,如果未能解决你的问题,请参考以下文章

使用 Nsight Systems 跟踪自定义 CUDA 内核

如何在 VS 2010 中使用 Nvidia NSight 查看 CUDA 线程值?

Nsight + Visual Studio 上缺少“开始性能分析”按钮

cuda-gdb 在 Linux 上的 nsight 中不起作用

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

使用并行 nsight 2.2 创建新的 CUDA 项目