測試環境為 Ubuntu 16.04 x86_64
從 Nvidia 下載驅動程式(含 CUDA Toolkit) http://www.nvidia.com/download/driverResults.aspx/124729/en-us ,依著下列步驟,即可以完成安裝.
Tesla 支援列表:
- V-Series:
Tesla V100 (CUDA Toolkit 9.0) - P-Series:
Tesla P100, Tesla P40, Tesla P6, Tesla P4 (CUDA Toolkit 8.0 , 9.0) - K-Series:
Tesla K80, Tesla K40c, Tesla K40m, Tesla K40s, Tesla K40st, Tesla K40t, Tesla K20Xm, Tesla K20m, Tesla K20s, Tesla K20c, Tesla K10, Tesla K8 (CUDA Toolkit 7.0 , 7.5 , 8.0 , 9.0) - C-Class:
Tesla C2075, Tesla C2070, Tesla C2050 (CUDA Toolkit 7.0 , 7.5 , 8.0 , 9.0) - M-Class:
M60, M40 24GB, M40, M6, M4, M2090, M2075, M2070, M2070-Q, M2050 (CUDA Toolkit 8.0 , 9.0) - X-Class:
Tesla X2070, Tesla X2090 (CUDA Toolkit 7.0 , 7.5 , 8.0 , 9.0)
root@ubuntu:~# dpkg -i nvidia-diag-driver-local-repo-ubuntu1604-384.81_1.0-1_amd64.deb root@ubuntu:~# apt-get update root@ubuntu:~# apt-get install cuda-drivers root@ubuntu:~# reboot
不過安裝完成之後,使用一般使用者在 GUI 登入後會立即回到登入畫面,使用 root 登入系統會多顯示如下的錯誤.
Error found when loading /root/.profile mesg: ttyname failed: Inappropriate ioctl for device As result the session will not be configured correctly. You should fix the problem as soon as feasible.
檢視 /var/log/syslog 會有下列的錯誤
Failed to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files
目前看起來沒有解.
如果要使用 GUI 的程式可以利用 SSH X11 Forwarding – https://benjr.tw/304#x ,或是其他遠端桌面請參考 https://benjr.tw/3318
多網段還需要設定 Routing table ,請參考 https://benjr.tw/74430
nvidia-smi
要怎麼確認你的裝置運作正常,可以先透過 lspci 檢視裝置是否正確顯示.
root@benben:~# lspci | grep -i nvidia 86:00.0 3D controller: NVIDIA Corporation Device 15f8 (rev a1)
接著透過 Nvidia 所提供的 nvidia-smi(NVIDIA System Management Interface)工具檢查驅動程式與 GPU 的資訊.
root@benben:~# nvidia-smi Wed Nov 8 09:44:55 2017 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 384.90 Driver Version: 384.90 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 Tesla P100-PCIE... Off | 00000000:86:00.0 Off | 0 | | N/A 37C P0 33W / 250W | 0MiB / 16276MiB | 0% Default | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: GPU Memory | | GPU PID Type Process name Usage | |=============================================================================| | No running processes found | +-----------------------------------------------------------------------------+
常用參數
-L, –list-gpus
列出系統裡所有的 NVDIA GPUs.
-q, –query
把系統的 GPU unit 所有資訊顯示出來.
如果需要詳細的資訊可以使用 –query-gpu ,至於要顯示哪一些詳細的資訊,可以先用參數 –help-query-gpu 查詢.
–help-query-gpu
顯示哪一些詳細的資訊可以查詢.
–query-gpu
要顯示哪一些詳細的資訊.
root@benben:~# nvidia-smi --help-query-gpu
root@benben:~# nvidia-smi --format=csv --query-gpu=utilization.gpu,power.draw,temperature.gpu utilization.gpu [%], power.draw [W], temperature.gpu 0 %, 33.17 W, 37
要長時間觀察可以加入 -l SEC (每 # 秒顯示一次)
root@benben:~# nvidia-smi -l 5 --format=csv --query-gpu=utilization.gpu,power.draw,temperature.gpu
-l SEC
每 # 秒顯示一次.