Nvidia GPU性能分析工具Nsight System

一、概述

NVIDIA的Nsight System是一款性能分析工具,可以简单地理解为一种帮助用户查看和理解用到GPU程序在计算机上如何运行的工具。Nsight Systems会记录程序在运行过程中的各种信息,如每个任务的开始和结束时间、GPU的利用率、内存的使用情况等。然后,它会把这些信息以图形化的方式展现出来,让用户能够一目了然地看到程序的运行状况。

二、安装

Nsight system的安装方式比较简单,可以从Nvidia官网上找到匹配自己平台的安装包安装即可。此处给出Linux x86环境下的安装命令:

sudo dpkg -i NsightSystems-linux-nda-2022.3.2.34-3e5e9a1.deb

三、使用

3.1 采集

nsys数据的采集也有两种方式,一种是通过nsight system的UI界面交互式采集;第二种是通过命令行的方式采集得到nsys数据,然后通过UI进行分析;本节仅对第二种方式进行简单介绍。nsys的采集命令如下:

nsys [global-options] profile [options] <application> [application-arguments]

值得注意的是数据采集过程中,Nsight Systems会监视目标应用程序的执行,并将收集到的事件数据缓存在内存中。一旦数据采集完成,这些数据会被写入磁盘上的文件中,以供后续分析和可视化使用。这是因为性能分析工具需要实时捕获应用程序的运行时事件,包括CPU和GPU的活动、函数调用、内存访问等。通常,这个文件是一个二进制文件,包含了应用程序运行时的详细性能信息。

3.2 分析

Nsight system提供了可视化的UI交互界面,通过交互UI界面可以很方便的分析采集到的nsys数据;默认展示的是Timeline View视图,其他视图还包括有Analysis Summary、Diagnostics Summary视图等。Timeline View视图可以很直观的看到kernel在GPU上执行的过程。

在具体深挖神经网络在GPU上运行行为之前,首先应当看GPU Metrics里的总览指标。其中SM Active表示处理器繁忙率,粉色表示avg,灰色表示max。其它的指标要么太粗糙,无法具体到计算行为,或者太细节,不应该是由我们来优化的,而是应该由负责底层算子的开发者去优化。为了达到最高效的GPU利用率,我们希望SM Active为0的部分尽可能小。

四、参考链接

User Guide — nsight-systems 2024.3 documentation

Nsight Systems | NVIDIA Developer

  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值