nvidia-smi 命令详解
nvidia-smi 命令詳解
簡介
nvidia-smi - NVIDIA System Management Interface program
nvidia smi(也稱為NVSMI)為來自 Fermi 和更高體系結構系列的 nvidia Tesla、Quadro、GRID 和 GeForce 設備提供監控和管理功能。GeForce Titan系列設備支持大多數功能,為GeForce品牌的其余部分提供的信息非常有限。NVSMI是一種跨平臺工具,支持所有標準NVIDIA驅動程序支持的Linux發行版,以及從Windows Server 2008 R2開始的64位版本的Windows。
詳細的信息可以去手冊中查找:man nvidia-smi。
nvidia-smi 命令
直接在命令行輸入 nvidia-smi 命令應該是各位煉丹師再熟悉不過的命令了。
注意:建議使用 watch -n 0.5 nvidia-smi 來動態地觀察 GPU 的狀態。
通過 nvidia-smi 命令,我們會得到這樣一個信息豐富的頁面:
Tue Nov 9 13:47:51 2021 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 495.44 Driver Version: 495.44 CUDA Version: 11.5 | |-------------------------------+----------------------+----------------------+ | 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:17:00.0 Off | N/A | | 62% 78C P2 155W / 170W | 10123MiB / 12051MiB | 100% Default | | | | N/A | +-------------------------------+----------------------+----------------------+ | 1 NVIDIA GeForce ... Off | 00000000:65:00.0 Off | N/A | |100% 92C P2 136W / 170W | 10121MiB / 12053MiB | 99% Default | | | | N/A | +-------------------------------+----------------------+----------------------+ | 2 NVIDIA GeForce ... Off | 00000000:B5:00.0 Off | N/A | | 32% 34C P8 12W / 170W | 5MiB / 12053MiB | 0% Default | | | | N/A | +-------------------------------+----------------------+----------------------+ | 3 NVIDIA GeForce ... Off | 00000000:B6:00.0 Off | N/A | | 30% 37C P8 13W / 170W | 5MiB / 12053MiB | 0% Default | | | | N/A | +-------------------------------+----------------------+----------------------++-----------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=============================================================================| | 0 N/A N/A 1258 G /usr/lib/xorg/Xorg 6MiB | | 0 N/A N/A 10426 C ...a3/envs/JJ_env/bin/python 10111MiB | | 1 N/A N/A 1258 G /usr/lib/xorg/Xorg 4MiB | | 1 N/A N/A 10427 C ...a3/envs/JJ_env/bin/python 10111MiB | | 2 N/A N/A 1258 G /usr/lib/xorg/Xorg 4MiB | | 3 N/A N/A 1258 G /usr/lib/xorg/Xorg 4MiB | +-----------------------------------------------------------------------------+其中顯存占用和 GPU 利用率當然是我們最常來查看的參數,但是在一些情況下(比如要重點監控 GPU 的散熱情況時)其他參數也很有用,筆者簡單總結了一下該命令輸出的各個參數的含義如下圖:
可以看到其中各個位置的對應含義在輸出本身中其實都已經指出了(藍框),紅框則指出了輸出各個部分的含義,大部分輸出的作用一目了然,這里筆者將其中幾個不那么直觀的參數簡單整理一下:
- Fan:從0到100%之間變動,這個速度是計算機期望的風扇轉速,實際情況下如果風扇堵轉,可能打不到顯示的轉速。
- Perf:是性能狀態,從P0到P12,P0表示最大性能,P12表示狀態最小性能。
- Persistence-M:是持續模式的狀態,持續模式雖然耗能大,但是在新的GPU應用啟動時,花費的時間更少,這里顯示的是off的狀態。
- Disp.A:Display Active,表示GPU的顯示是否初始化。
- Compute M:是計算模式。
- Volatile Uncorr. ECC:是否開啟 ECC 糾錯。
- type:進程類型。C 表示計算進程,G 表示圖形進程,C+G 表示都有。
nvidia-smi 命令的其他參數
除了直接運行 nvidia-smi 命令之外,還可以加一些參數,來查看一些本機 Nvidia GPU 的其他一些狀態。下面筆者簡單介紹幾個常用的參數,其他的有需要可以去手冊中查找:man nvidia-smi。
-L
-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
-i 參數指定某個 GPU,多用于查看 GPU 信息時指定其中一個 GPU。
-q
-q 參數查看 GPU 的全部信息??赏ㄟ^ -i 參數指定查看某個 GPU 的參數。
如:
nvidia-smi -i 0 -q輸出太長了,筆者這里就不列了,大家可以自己試一下,是很完整的信息。
topo
topo 展示多GPU系統的拓撲連接信息,通常配合 -m 參數即 nvidia-smi topo -m,其他參數可自行查閱。
輸出如下,這里用代碼塊沒法對齊,就直接貼圖了:
這里只介紹了幾個筆者常用的參數,其他參數請自行查閱手冊吧。
總結
以上是生活随笔為你收集整理的nvidia-smi 命令详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: G36宁洛高速收费站自动收费后给卡吗?
- 下一篇: 南海问题中国怎么处理?