nvidia-smi 系列命令,查看gpu ,顯存信息

轉載於:http://www.javashuo.com/article/p-kjsaxcpu-ge.htmlhtml

 顯卡包含gpu,顯存,gpu不等於顯存html5

nvidia-smi 的定義:

  1. 基於 NVIDIA Management Library (NVIDIA 管理庫),實現 NVIDIA GPU 設備的管理和監控功能
  2. 主要支持 Tesla, GRID, Quadro 以及 TitanX 的產品,有限支持其餘的 GPU 產品
    因此咱們在常見的 NVIDIAGPU 產品上安裝完驅動後,都同時安裝上 nvidia-smi 管理工具,幫助管理人員經過命令行的方式對 GPU 進行監控和管理。
    當咱們成功部署了 GRID 軟件之後,咱們能夠經過如下 nvidia-smi 命令實現對 GPU 的管理。
    nvidia-smi 會隨着 GRID 軟件不斷的升級,而功能不斷的豐富,因此當咱們在執行一些複雜的 nvidia-smi 命令時,可能早期的 GRID 版本沒法支持這些命令。
    如下 nvidia-smi 經常使用命令行是我的推薦瞭解的:

nvidia-smi

pic

這是服務器上特斯拉 K80 的信息。
上面的表格中:
第一欄的 Fan:N/A 是風扇轉速,從 0 到 100% 之間變更,這個速度是計算機指望的風扇轉速,實際狀況下若是風扇堵轉,可能打不到顯示的轉速。有的設備不會返回轉速,由於它不依賴風扇冷卻而是經過其餘外設保持低溫(好比咱們實驗室的服務器是常年放在空調房間裏的)。
第二欄的 Temp:是溫度,單位攝氏度。
第三欄的 Perf:是性能狀態,從 P0 到 P12,P0 表示最大性能,P12 表示狀態最小性能。
第四欄下方的 Pwr:是能耗,上方的 Persistence-M:是持續模式的狀態,持續模式雖然耗能大,可是在新的 GPU 應用啓動時,花費的時間更少,這裏顯示的是 off 的狀態。
第五欄的 Bus-Id 是涉及 GPU 總線的東西,domain:bus:device.function
第六欄的 Disp.A 是 Display Active,表示 GPU 的顯示是否初始化。
第五第六欄下方的 Memory Usage 是顯存使用率。
第七欄是浮動的 GPU 利用率。
第八欄上方是關於 ECC 的東西。
第八欄下方 Compute M 是計算模式。
下面一張表示每一個進程佔用的顯存使用率。java

顯存佔用和 GPU 佔用是兩個不同的東西,顯卡是由 GPU 和顯存等組成的,顯存和 GPU 的關係有點相似於內存和 CPU 的關係。windows

pic

nvidia-smi -q

查看當前全部 GPU 的信息,也能夠經過參數 i 指定具體的 GPU。
好比 nvidia-smi-q -i 0 表明咱們查看服務器上第一塊 GPU 的信息。
經過 nvidia-smi -q 咱們能夠獲取如下有用的信息:
GPU 的 SN 號、VBIOS、PN 號等信息:服務器

能夠參考 瞭解 GPU 從 nvidia-smi 命令開始app

windows 上的使用

nvidia-smi 所在的位置爲:
C:\Program Files\NVIDIA Corporation\NVSMIdom

cmd 進入目錄輸入命令便可:
pic工具

 

nvidia-smi --help-query-gpu:性能

"memory.total"
Total installed GPU memory.ui

"memory.used"
Total memory allocated by active contexts.

"memory.free"
Total free memory.

nvidia-smi --query-gpu=timestamp,memory.total,memory.free,memory.used,name,utilization.gpu,utilization.memory --format=csv -l 5


nvidia-smi --format=csv,noheader,nounits --query-gpu=timestamp,index,memory.total,memory.used,memory.free,utilization.gpu,utilization.memory -lms 500 -f smi-1-90s-instance.log

計算程序運行時間段內 平均顯存使用狀況

 

顯存:顯卡的存儲空間。

nvidia-smi 查看的都是顯卡的信息,裏面memory是顯存

top:

若是有多個gpu,要計算單個GPU,好比計算GPU0的利用率:

1 先導出全部的gpu的信息到 smi-1-90s-instance.log文件:

nvidia-smi --format=csv,noheader,nounits --query-gpu=timestamp,index,memory.total,memory.used,memory.free,utilization.gpu,utilization.memory -lms 500 -f smi-1-90s-instance.log

2 GPU0的所有數據,將第一個gpu的信息導出到test.log裏面

 awk  -F","  '{ if($2==0){print $0} } '  smi-1-90s-instance.log >> test.log

3 再cat smi-1-90s-instance.log | awk '{sum7+=$7;count++}END{print sum7/count}'


https://javawind.net/html5-apple-watch-clock-face/index.htmltop;將動態刷新的信息寫入到文件中top   -d   0.5   -b|grep   hello|tee   -a  >top.txt將動態產生的系統信息放入文件中
相關文章
相關標籤/搜索