性能分析工具
文章平均质量分 91
Intel Nvidia性能工具
USST_Coder
这个作者很懒,什么都没留下…
展开
-
Nsight Compute内存访问常用Metrics含义理解
Memory L1 Transcations Global:实际全局内存加载至L1缓存的内存交换次数,粒度128bytesMemory L2 Transactions Global:实际全局内存加载至L2缓存的内存交换次数,粒度32bytes,该参数的值应该是Memory L1 Transcations Global 的4倍Memory Ideal L2 Transactions Global:理论需要从全局内存加载至L2缓存的内存交换次数,当数值比Memory L2 Transactions Glob原创 2020-11-27 13:24:06 · 1125 阅读 · 2 评论 -
Nsight Compute与nvprof metrics 对照
NVIDIA 计算能力7.5及以上的GPU设备不再支持nvprof工具进行性能剖析,提示使用Nsight Compute作为替代品,如下图所示。Nsight Compute Cli(命令行)剖析的参数与nvprof不一样,当按照nvprof的参数抓取数据时,因为参数不识别,无法抓取希望得到的指标,如下图所示;同时,Nsight Compute Cli参数成千上万,虽然可以将这些参数全部专区,但是会对使用者筛选关注信息带来很大的麻烦。因此,非常有必要找到两个工具参数之间的对应关系。这里记录命令行使用N原创 2020-11-12 14:57:28 · 5477 阅读 · 1 评论 -
Nsight Compute 使用
记录使用Nsight Compute 分析cuda性能的方法。1.单击菜单栏上的Connet,弹出如下界面,设置要剖析的执行程序路径等执行相关参数,选择Interactive Profile模式,可以对剖析流程进行控制,所有参数设置完成后,单击Launch开始性能分析。2.在API Stream执行到要剖析的核函数,然后单击菜单栏的 Profile Kernel对核函数进行剖析3.生成性能分析结果,可以通过切换Page选项查看关注的参数,如Source ,Detail等Detail信息:记录原创 2020-11-04 15:59:03 · 21130 阅读 · 16 评论 -
Nsight Compute Profile Kernel无法定位源码问题
Nsight Compute是NVIDIA提供的性能分析工具。本人在剖析核函数过程中遇到了无法定位源码的问题。在此记录原因与解决方法。如图,在Profile Kernel时,想要查看源码中某行代码的性能情况,发现只能查看汇编,无法查看源码。造成这个现象的原因是:编译时没添加调试信息,因此只能定位汇编,无法定位源码。处理方法:这里编译通过VS集成CUDA的编译器,设置调试信息方法如下:打开Project->属性->CUDA C/C+±>Device ->Generate重原创 2020-11-04 15:10:27 · 1631 阅读 · 1 评论 -
ICC编译器生成优化报告
记录两个操作系统上ICC编译器生成优化报告的设置步骤。WindowsICC手册设置说明VS属性页面设置如下:这里对ICC优化报告的选项参数进行简单说明。Optimization Diagnostic File:生成报告文件。注意,Windows操作系统上生成的报告后缀是 .rep。Optimization Diagnostic Level:报告详细程度。ICC手册说明如下。Optimization Diagnostic Phase:报告期项(优化类型)。LinuxCMakeLi原创 2020-09-14 16:21:01 · 1031 阅读 · 0 评论 -
Instructions Retired:
Instructions Retired:This event indicates the number of instructions that retired or executed completely. 执行完的指令个数This does not include partially processed instructions executed due to branch mispredictions.不包括由于分支预测失败而部分执行的指令。表示消耗的指令数,计数执行过程中消耗的指令数。说原创 2020-07-16 13:48:31 · 563 阅读 · 0 评论