资讯详情

如何监控NVIDIA GPU 的运行状态和使用情况

设备跟踪和管理正成为机器学习项目的中心焦点。该任务的核心是在模型培训过程中跟踪和报告gpu使用效率。

有效的GPU监控可以帮助我们配置一些非常重要的超参数,如批量大小,并有效识别训练中的瓶颈,如CPU活动(通常是预处理图像)占用时间长,导致活动时间长GPU在空闲状态下,需要等待下一批数据的交付。

利用率是多少?

过去的采样周期GPU 内核执行时间的百分比称为GPU的利用率。

如果这个值很低,那就意味着你 GPU 没有全速工作,可能是因为 CPU或者IO 操作瓶颈,如果使用小时付费的云服务器,那就是浪费时间和金钱!

使用终端命令监控

nvidia-smi

显示如下:

  • 第一栏的Fan:N/A是风扇转速,从0到100%之间变动,这个速度是计算机期望的风扇转速,实际情况下如果风扇堵转,可能打不到显示的转速。有的设备不会返回转速,因为它不依赖风扇冷却而是通过其他外设保持低温(比如我们实验室的服务器是常年放在空调房间里的)。
  • 第二栏的Temp:是温度,单位摄氏度。
  • 第三栏的Perf:性能状态,从P0到P12,P0表示最大性能,P表示状态最小性能。
  • 第四栏下方的Pwr:是能耗,在上面Persistence-M:是连续模式的状态。虽然连续模式耗能量大,但在新的状态下GPU启动应用程序需要更少的时间,这里显示的是off的状态。
  • 第五栏的Bus-Id是涉及GPU总线的东西,domain:bus:device.function
  • 第六栏的Disp.A是Display Active,表示GPU显示是否初始化。
  • 第五栏下方Memory Usage是显存利用率。
  • 第七栏浮动GPU利用率。
  • 关于第八栏上方ECC的东西。
  • 第八栏下方Compute M是计算模式。

nvidia-smi 其他命令参数

除直接操作外 nvidia-smi 除了命令,还可以添加一些参数来查看一些机器 Nvidia GPU 其他状态。下面作者简单介绍几个常用参数,其他需要的可以在手册中找到:man nvidia-smi。

-L 参数显示连接到系统的参数 GPU 列表。 nvidia-smi -L    # 输出: GPU 0: NVIDIA GeForce RTX 3060 (UUID: GPU-55275dff-****-****-****-6408855fced9) GPU 1: NVIDIA GeForce RTX 3060 (UUID: GPU-0a1e7f37-****-****-****-df9a8bce6d6b) GPU 2: NVIDIA GeForce RTX 3060 (UUID: GPU-38e2771e-****-****-****-d5cbb85c58d8) GPU 3: NVIDIA GeForce RTX 3060 (UUID: GPU-8b45b004-****-****-****-46c05975a9f0)  GPU UUID:此值是GPU世界上唯一不可变字母数字标识符。它与主板上的物理标签无关。它与主板上的物理标签无关。     -i 指定一个参数 GPU,多用于查看 GPU 指定其中一个信息 GPU。  -q 参数查看 GPU 所有信息。可通过 -i 指定参数检查一个 GPU 的参数。  如: nvidia-smi -i 0 -q

topo

topo 展示多GPU系统的拓扑连接信息通常与 -m 参数即 nvidia-smi topo -m,可自行查阅其他参数。

输出如下,这里不能用代码块对齐,直接贴图:

标签: 聚丙烯膜介质电容器cbb80b

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台