?????博主簡介
????云計算領(lǐng)域優(yōu)質(zhì)創(chuàng)作者
????華為云開發(fā)者社區(qū)專家博主
????阿里云開發(fā)者社區(qū)專家博主
??交流社區(qū):運維交流社區(qū) 歡迎大家的加入!
?? 希望大家多多支持,我們一起進步!??
??如果文章對你有幫助的話,歡迎 點贊 ???? 評論 ?? 收藏 ?? 加關(guān)注+??
nvidia-smi簡介
1、什么是nvidia-smi
nvidia-smi是nvidia 的系統(tǒng)管理界面 ,其中smi是 System management interface 的縮寫,它可以收集各種級別的信息,查看顯存使用情況,顯卡的溫度… …。此外, 可以啟用和禁用 GPU 配置選項 (如 ECC 內(nèi)存功能)。
2、介紹nvidia-smi
nvidia-sim簡稱NVSMI,提供監(jiān)控GPU使用情況和更改GPU狀態(tài)的功能,是一個跨平臺工具,支持所有標準的NVIDIA驅(qū)動程序支持的Linux和WindowsServer 2008 R2 開始的64位系統(tǒng)。這個工具是N卡驅(qū)動附帶的,只要使用nvidia顯卡,完成安裝驅(qū)動就會有nvidia-smi命令;
nvidia-smi命令詳解
表格參數(shù)詳解
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 515.57 Driver Version: 515.57 CUDA Version: 11.7 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... Off | 00000000:65:00.0 Off | N/A |
| 30% 22C P8 3W / 350W | 9815MiB / 12288MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 37593 C java 2869MiB |
| 0 N/A N/A 48477 C python3 2779MiB |
+-----------------------------------------------------------------------------+
?
?
| NVIDIA-SMI 515.57 Driver Version: 515.57 CUDA Version: 11.7 |
NVIDIA-SMI 515.57???#GRID版本
Driver Version: 515.57??#驅(qū)動版本
CUDA Version: 11.7???#CUDA最高支持的版本
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... Off | 00000000:65:00.0 Off | N/A |
| 30% 22C P8 3W / 350W | 9815MiB / 12288MiB | 0% Default |
|===============================+======================+======================|
為分隔符:上下兩行是對應(yīng)關(guān)系,上1對下1,上2對下2
?
- GPU?????????#本機中的GPU編號,(多塊顯卡的時候,編號從0開始)圖上GPU的編號為:0。
- Fan?????????#風扇轉(zhuǎn)速(0%-100%);N/A表示沒有風扇;err表示風扇可能損壞;圖上表示風扇轉(zhuǎn)速為:30%。
- Name????????#GPU類型(顯卡型號),圖上GPU的類型為:NVIDIA GeForce RTX 3080 Ti。
- Temp?????????#GPU的溫度(GPU溫度過高會導(dǎo)致GPU的頻率下降),單位攝氏度C;圖上溫度為:22C。
- Perf?????????#GPU的性能狀態(tài),從P0(最大性能)到P12(最小性能),圖上是:P8
- Persistence-M????#持續(xù)模式的狀態(tài),持續(xù)模式雖然耗能大,但是在新的GPU應(yīng)用啟動時花費的時間更少,圖上顯示的是:off
- Pwr:Usage/Cap????#能耗表示,Usage:用了多少,Cap總共多少;圖上Usage顯示:3W,Cap顯示:350W。
- Bus-Id????????#GPU總線相關(guān)顯示,domain:bus:device.function
- Disp.A????????#Display Active ,表示GPU的顯示是否初始化
- Memory-Usage????#內(nèi)存使用率
- Volatile GPU-Util????#GPU使用率
- Uncorr. ECC??????#關(guān)于ECC的東西,是否開啟錯誤檢查和糾正技術(shù),0/disabled,1/enabled
- Compute M??????#計算模式,0/DEFAULT,1/EXCLUSIVE_PROCESS,2/PROHIBITED
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 762 C java 1995MiB |
| 1 354 C python3 2101MiB |
|=============================================================================|
為分隔符:分隔符上面對應(yīng)下面的所有
?
- Processes???????#顯示每個進程占用的顯存使用率、進程號、占用的哪個GPU。
?- GPU??????????#當前進程占用的那塊顯卡。
- PID??????????#當前進程的PID,可使用ps -ef | grep PID 查看詳細命令。
- Type??????????#當前進程的運行狀態(tài)。
- Process name?????#當前進程的運行主命令。
- GPU Memory Usage???#該進程占用的顯存。
nvidia-smi --help命令詳解
列表選項:
-L #列出所有可用的 NVIDIA 設(shè)備
-B #列出所有被拉入黑名單的NVIDIA設(shè)備
查詢選項:
-q #查詢顯示GPUnvidia的相關(guān)信息
配合選項:
-u、 --unit #顯示單位屬性,而不是GPU屬性。
-i、 --id #以特定GPU或單元為目標。可指定顯卡編號
--format #指定輸出的格式csv
--filename #輸入csv文件,--filename=后跟自定義csv文件名;
--query-gpu #指定輸出的字段,后可跟timestamp時間、name,
-x、 --xml #格式生成xml輸出。
-l #持續(xù)刷新顯存狀態(tài)
-lms #循環(huán)動態(tài)顯示;每毫秒
--dtd #顯示xml輸出時,嵌入dtd。
-d、 --display #僅顯示選定信息:MEMORY,
列出所有可用的 NVIDIA 設(shè)備
nvidia-smi -L
作用:可用作統(tǒng)計服務(wù)器中的顯卡數(shù)量。
列出所有被拉入黑名單的NVIDIA設(shè)備
nvidia-smi -B
No blacklisted devices found.
未找到列入黑名單的設(shè)備。
查詢nvidiaGPU的相關(guān)信息
nvidia-smi -q
持續(xù)刷新顯存狀態(tài)
#每兩秒刷新一次顯存狀態(tài)
nvidia-smi -l 2
也可用
watch -n 1 nvidia-smi #1秒刷新一次顯存狀態(tài)
查詢所有的csv文件--query-gpu可使用的字段及字段說明、實例
#查詢可使用的所有字段
nvidia-smi --help-query-gpu
timestamp #查詢位置的時間戳,格式為“YYYY/MM/DD HH:MM:SS.msec” ; nvidia-smi --format=csv,noheader --query-gpu=timestamp
memory.total #查詢已安裝的GPU顯存總數(shù)。 nvidia-smi --format=csv,noheader --query-gpu=memory.total
memory.used #查詢已安裝的GPU顯存使用率。 nvidia-smi --format=csv,noheader --query-gpu=memory.used
memory.free #查詢已安裝的GPU剩余顯存。 nvidia-smi --format=csv,noheader --query-gpu=memory.free
driver_version #查詢已安裝的NVIDIA顯示器驅(qū)動程序的版本; nvidia-smi --format=csv,noheader --query-gpu=driver_version
index #輸出顯卡的編號: nvidia-smi --format=csv,noheader --query-gpu=index
pstate #GPU的當前性能狀態(tài)。狀態(tài)范圍從P0(最大性能)到P12(最小性能) nvidia-smi --format=csv,noheader --query-gpu=pstate
power.draw #顯存功耗,對應(yīng)Pwr:Usage使用: nvidia-smi --format=csv,noheader --query-gpu=power.draw
temperature.gpu #輸出GPU溫度,核心GPU溫度。 nvidia-smi --format=csv,noheader --query-gpu=index,temperature.gpu | sed -e "s#, #卡溫度為:#g" -e 's#$#°C#g'
fan.speed #輸出GPU風扇轉(zhuǎn)速。 nvidia-smi --format=csv,noheader --query-gpu=index,fan.speed | sed "s#, #卡風扇轉(zhuǎn)速為:#g"
utilization.gpu #輸出GPU的使用率: nvidia-smi --format=csv,noheader --query-gpu=utilization.gpu
utilization.memory??#輸出顯存的使用率: nvidia-smi --format=csv,noheader --query-gpu=utilization.memory
count #查詢位置的時間戳,格式為“YYYY/MM/DD HH:MM:SS.msec”; nvidia-smi --format=csv,noheader --query-gpu=count
"name" or "gpu_name" #查詢顯卡型號,適用于所有產(chǎn)品; nvidia-smi --format=csv,noheader --query-gpu=name,gpu_name
"serial" or "gpu_serial" #該編號與每個板上實際打印的序列號相匹配。它是全局唯一的不可變字母數(shù)字值。 nvidia-smi --format=csv,noheader --query-gpu=serial,gpu_serial
"uuid" or "gpu_uuid" #此值是GPU的全局唯一不可變字母數(shù)字標識符。它與電路板上的任何物理標簽都不對應(yīng)。 nvidia-smi --format=csv,noheader --query-gpu=uuid,gpu_uuid
"pci.bus_id"or"gpu_bus_id" #PCI總線id為“域:總線:設(shè)備.功能”,十六進制。 nvidia-smi --format=csv,noheader --query-gpu=pci.bus_id,gpu_bus_id
pci.domain #PCI域名,十六進制。 nvidia-smi --format=csv,noheader --query-gpu=pci.domain
pci.bus #PCI總線編號,十六進制。 nvidia-smi --format=csv,noheader --query-gpu=pci.bus
pci.device #PCI設(shè)備編號,十六進制。 nvidia-smi --format=csv,noheader --query-gpu=pci.device
pci.device_id #PCI供應(yīng)商設(shè)備id,十六進制 nvidia-smi --format=csv,noheader --query-gpu=pci.device_id
pci.sub_device_id #PCI子系統(tǒng)id,十六進制 nvidia-smi --format=csv,noheader --query-gpu=pci.sub_device_id
vbios_version #GPU板的BIOS。 nvidia-smi --format=csv,noheader --query-gpu=vbios_version
inforom.oem #OEM配置數(shù)據(jù)的版本。 nvidia-smi --format=csv,noheader --query-gpu=inforom.oem
inforom.ecc #ECC記錄數(shù)據(jù)的版本。 nvidia-smi --format=csv,noheader --query-gpu=inforom.ecc
driver_model.current #當前使用的驅(qū)動程序模型。在Linux上始終為“N/A” nvidia-smi --format=csv,noheader --query-gpu=driver_model.current
accounting.buffer_size #循環(huán)緩沖區(qū)的大小,該緩沖區(qū)包含可查詢會計統(tǒng)計信息的進程列表。這是在有關(guān)最舊進程的信息被有關(guān)新進程的信息覆蓋之前,將為其存儲記帳信息的最大進程數(shù) nvidia-smi --format=csv --query-gpu=accounting.buffer_size
持續(xù)監(jiān)控nvidia-smi結(jié)果寫入自定義csv文件,并指定寫入文件的監(jiān)控字段
nvidia-smi -l 1 --format=csv --filename=report.csv --query-gpu=timestamp,name,index,utilization.gpu,memory.total,memory.used,memory.free,power.draw
-l
??????#隔多久記錄一次,我們寫的是每秒記錄一次。--format
???#結(jié)果記錄文件格式是csv類型。(csv)--filename
??#結(jié)果記錄文件的名字。(report.csv)--query-gpu
??#都記錄哪些數(shù)據(jù)到csv文件中;
??timestamp
?????#輸出每塊顯卡的時間戳:nvidia-smi --format=csv --query-gpu=timestamp
??name
????????#輸出顯卡的型號(名稱):nvidia-smi --format=csv --query-gpu=name
??index
???????#輸出顯卡的編號:nvidia-smi --format=csv --query-gpu=index
??utilization.gpu
??#輸出GPU的使用率:nvidia-smi --format=csv --query-gpu=utilization.gpu
??memory.total
????#顯存大小,輸出總顯存值:nvidia-smi --format=csv --query-gpu=memory.total
??memory.used
?????#顯存大小,輸出使用了多少顯存:nvidia-smi --format=csv --query-gpu=memory.used
??memory.free
?????#顯存大小,輸出剩余多少顯存:nvidia-smi --format=csv --query-gpu=memory.free
;不太準,建議使用:總顯存-使用顯存來計算;
??power.draw
?????#顯存功耗,對應(yīng)Pwr:Usage使用:nvidia-smi --format=csv --query-gpu=power.draw
持續(xù)監(jiān)控nvidia-smi結(jié)果為csv類型并雙重重定向到csv文件中,并指定寫入文件的監(jiān)控字段
nvidia-smi -lms --query-gpu=timestamp,pstate,temperature.gpu,utilization.gpu,utilization.memory,memory.total,memory.free,memory.used --format=csv | tee gpu-log.csv
-lms
?????#循環(huán)動態(tài)顯示;每毫秒--query-gpu
??#都記錄哪些數(shù)據(jù)到csv文件中;
??timestamp
?????#輸出每塊顯卡的時間戳:nvidia-smi --format=csv --query-gpu=timestamp
??pstate
?????#輸出GPU的性能狀態(tài):nvidia-smi --format=csv --query-gpu=pstate
??temperature.gpu
?????#輸出GPU的顯卡溫度:nvidia-smi --format=csv --query-gpu=temperature.gpu
??utilization.gpu
??#輸出GPU的使用率:nvidia-smi --format=csv --query-gpu=utilization.gpu
??utilization.memory
??#輸出顯存的使用率:nvidia-smi --format=csv --query-gpu=utilization.memory
??memory.total
????#顯存大小,輸出總顯存值:nvidia-smi --format=csv --query-gpu=memory.total
??memory.used
?????#顯存大小,輸出使用了多少顯存:nvidia-smi --format=csv --query-gpu=memory.used
??memory.free
?????#顯存大小,輸出剩余多少顯存:nvidia-smi --format=csv --query-gpu=memory.free
;不太準,建議使用:總顯存-使用顯存來計算;--format
???#結(jié)果記錄文件格式是csv類型。(csv)tee
??????#雙重重定向到gpu-log.csv文件中。
指定0顯卡輸出csv類型的顯存總空間及使用空間和剩余空間
nvidia-smi -i 0 --format=csv --query-gpu=memory.total,memory.used,memory.free
-i
???????#指定顯卡編號;不使用-i
,默認是顯示所有的顯卡型號的數(shù)據(jù);nvidia-smi --format=csv --query-gpu=memory.total,memory.used,memory.free
--format
????#結(jié)果記錄文件格式是csv類型。(csv)--query-gpu
??#都記錄哪些數(shù)據(jù)到csv文件中;
??memory.total
????#顯存大小,輸出總顯存值:nvidia-smi --format=csv --query-gpu=memory.total
??memory.used
?????#顯存大小,輸出使用了多少顯存:nvidia-smi --format=csv --query-gpu=memory.used
??memory.free
?????#顯存大小,輸出剩余多少顯存:nvidia-smi --format=csv --query-gpu=memory.free
;不太準,建議使用:總顯存-使用顯存來計算;
查詢所有的csv文件--format可使用的字段及字段說明、實例
csv 文件格式 vidia-smi --format=csv --query-gpu=memory.total
noheader 去除文件頭部標題 vidia-smi --format=csv,noheader --query-gpu=memory.total
nounits 去除單位,比如MiB nvidia-smi --format=csv,noheader,nounits --query-gpu=memory.total
查詢總顯存不帶頭部標題
nvidia-smi --format=csv,noheader --query-gpu=memory.total
查詢總顯存不帶頭部標題并且不帶單位
nvidia-smi --format=csv,noheader,nounits --query-gpu=memory.total
文章來源:http://www.zghlxwxcb.cn/news/detail-777849.html
附加:計算某顯卡的剩余顯存腳本
下載地址:計算顯卡的剩余顯存腳本:nvidia.sh
下載時記得看下面的說明和用法哈;
注▲:沒有積分可購買時,可私信我發(fā)你;但是還是需要進去看一下說明和用法,保證能夠順利使用。文章來源地址http://www.zghlxwxcb.cn/news/detail-777849.html
到了這里,關(guān)于nvidia-smi簡介及各參數(shù)的詳解與字段的詳解和使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!