NVIDIA Parallel Nsight与Visual Profiler

Sid*_*id' 2 profiler cuda nsight

我正在使用Windows平台上的CUDA.在Windows平台上,我们可以访问Parallel Nsight和Visual Profiler.两者都相当不错,但它们具有几乎相似的特征分析和跟踪功能.有人能告诉我他们两者是如何不同的,哪一个更适合Windows平台?我基本上需要一个分析工具.

Gre*_*ith 6

与Visual Profiler相比,Nsight Visual Studio Edition 2.2具有以下优势:

总体

  1. 集成到Visual Studio 2008 SP1和2010(需要专业版作为VS Express Edition不支持集成包).

  2. 本地和远程分析会话.还可以配置远程会话以将应用程序和资源复制到远程系统.

  3. 从目标应用程序或流程树中收集信息.

  4. 报告视图支持更高级的分组和过滤.数据表可以导出为ex​​cel.

追踪活动

  1. 跟踪OS活动,包括进程,线程和模块生存期,线程上下文切换,线程等待原因,CPU利用率,进程CPU利用率和线程利用率.

  2. 收集CUDA,OpenGL 2.x-3.x,DirectX 9-11和OpenCL 1.1的API和GPU工作跟踪,并显示时间线上的所有信息.

  3. 所有跟踪的API调用上的调用堆栈跟踪的集合,或仅在跟踪的API调用返回错误时.

  4. CUDA软件计数器显示每个上下文分配的内存.

  5. 对跟踪的信息进行额外控制.这很重要,因为跟踪太多信息会导致应用程序变为CPU限制.

  6. 来自NVIDIA工具扩展库和D3D性能标记的用户注释的时间轴和树形显示.

CUDA概况活动

  1. CUDA探查器提供了一种捕获内核并重复多次对应用程序透明的方法.这允许在非确定性应用程序中收集性能分析数据,并且只需启动一次应用程序.Visual Profiler <= 5要求应用程序具有确定性,以便它可以多次重新启动应用程序.

  2. 支持收集Visual Profiler尚未支持的许多有用指标,包括符合warp条件,这是了解您是否有足够的占用率和扭曲停顿原因以帮助您了解限制应用程序性能的最重要指标.

Visual Profiler具有以下优点:

  1. 跨平台.

  2. 提供专家系统来审查收集的信息.

  3. 将结果链接到CUDA最佳实践指南.

  4. 单击事件时,时间轴可以显示CPU和GPU事件之间的相关性.

  5. CUDA 5.0支持新的命令行分析器(nvprof).

  6. CUDA 5.0支持具有错误访问模式的分支差异和内存访问的源关联.

  7. CUDA 5.0探测器已集成到Nsight Eclipse Edition中.

  8. 更好地支持特斯拉PM计数器.

CUDA 5.0中的Visual Profiler增加了Nsight 1.5和2.x中提供的许多功能,包括

  • NVIDIA工具扩展库,用于使用可在时间线中显示的范围和标记来注释应用程序.

  • Fermi和Kepler GPU上的并发内核跟踪.

这两种工具都将为您分析应用程序提供非常有用的信息.我建议您使用每个工具的最新版本.

即将推出的Nsight VSE版本将具有许多用于调查CUDA内核执行的新功能.有关更多信息,请参阅http://developer.download.nvidia.com/GTC/PDF/GTC2012/PresentationPDF/S0430-GTC2012-Developing-CUDA-Nsight.pdf.