nvidia-smi 命令参数含义, nvitop
nvidia-smi 命令参数含义
GPU 的实时状态监测
解释相关参数含义: GPU:本机中的GPU编号 Name:GPU 类型 Persistence-M: Fan:风扇转速 Temp:温度,单位摄氏度 Perf:表征性能状态,从P0到P12,P0表示最大性能,P12表示状态最小性能 Pwr:Usage/Cap:能耗表示 Bus-Id:涉及GPU总线的相关信息; Disp.A:Display Active,表示GPU的显示是否初始化 Memory-Usage:显存使用率 Volatile GPU-Util:浮动的GPU利用率 Uncorr. ECC:关于ECC的东西 Compute M.:计算模式 Processes 显示每块GPU上每个进程所使用的显存情况。
表格参数详解:
GPU 本机中的GPU编号(有多块显卡的时候,从0开始编号)图上GPU的编号是:0
Fan:风扇转速(0%-100%),N/A表示没有风扇,这个速度是计算机期望的风扇转速,实际情况下如果风扇堵转,可能打不到显示的转速。
Name:GPU类型,图上GPU的类型是:GeForce MX250/RTX 2080Ti
Temp:GPU的温度(GPU温度过高会导致GPU的频率下降)
Perf:GPU的性能状态,从P0(最大性能)到P12(最小性能),图上是:P0
Persistence-M:持续模式的状态,持续模式虽然耗能大,但是在新的GPU应用启动时花费的时间更少,图上显示的是:off
Pwr:Usager/Cap:能耗表示,Usage:用了多少,Cap总共多少
Bus-Id:GPU总线相关显示,domain:bus:device.function
Disp.A:Display Active ,表示GPU的显示是否初始化
Memory-Usage:显存使用率
Volatile GPU-Util:GPU使用率
Uncorr. ECC:关于ECC的东西,是否开启错误检查和纠正技术,0/disabled,1/enabled
Compute M:计算模式,0/DEFAULT,1/EXCLUSIVE_PROCESS,2/PROHIBITED
Processes:显示每个进程占用的显存使用率、进程号、占用的哪个GPU
type: 进程类型。C 表示计算进程,G 表示图形进程,C+G 表示都有。
watch命令实时监测显卡
watch的基本用法是: watch [options] command最常用的参数是 -n, 后面指定是每多少秒来执行一次命令。 Nvidia自带了一个nvidia-smi的命令行工具,会显示显存使用情况: nvidia-smi设置一个每 10s 显示一次显存的情况:watch -n 10 nvidia-smi # n=1时,就可以实时监测显卡使用情况。这样,只要开着这个命令行窗口,就可以每n秒刷新一次。
隔几秒刷新一下显存状态:nvidia-smi -l 秒数
隔两秒刷新一下GPU的状态: nvidia-smi -l 2
将监控结果写入文件,并且指定写入文件的监控字段
nvidia-smi -l 1 --format=csv --filename=report.csv --query-gpu=timestamp,name,index,utilization.gpu,memory.total,memory.used,power.draw
-l:隔多久记录一次,命令中写的是1
–format:结果记录文件格式是csv
–filename: 结果记录文件的名字
–query-gpu:记录哪些数据到csv文件
timestamp:时间戳
memory.total:显存大小
memory.total:显存使用了多少
utilization.gpu:GPU使用率
power.draw:显存功耗,对应Pwr:Usage
nvitop
https://pypi.org/project/nvitop/
python 脚本指定用哪块GPU
一般情况: import os os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID" #(保证程序cuda序号与实际cuda序号对应) os.environ['CUDA_VISIBLE_DEVICES'] = "0,1" #(代表仅使用第0,1号GPU) 单GPU: os.environ["CUDA_VISIBLE_DEVICES"] = "2" #代表只使用第3个gpu
改变系统变量
#添加系统变量, 这里是要使用的GPU编号 export CUDA_VISIBLE_DEVICES=0 # 在程序开头设置 os.environ["CUDA_VISIBLE_DEVICES"] = '0,1,2,3' # 运行程序时使用命令行,来设置该程序可见的gpu: CUDA_VISIBLE_DEVICES=0,1,2,3 python xxx.py
使用nvidia相关命令
nvidia-smi简称NVSMI,提供监控GPU使用情况和更改GPU状态的功能,是一个跨平台工具,它支持Linux以及从Windows系统。
nvidia-smi watch -n 1 -d nvidia-smi # 每隔一秒刷新一次
参考文档:
https://bgbiao.top/post/manager-your-gpus/
https://blog.csdn.net/C_chuxin/article/details/82993350
https://blog.csdn.net/C_chuxin/article/details/82993350
https://www.cnblogs.com/carle-09/p/12420321.html
https://itcn.blog/p/0048359132.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!