Untuk men-debug kode CUDA dan memeriksa kompatibilitas, saya perlu mencari tahu versi driver nvidia untuk GPU yang telah saya instal. Saya menemukan Bagaimana cara mendapatkan versi cuda? tapi itu tidak membantu saya di sini.
Untuk men-debug kode CUDA dan memeriksa kompatibilitas, saya perlu mencari tahu versi driver nvidia untuk GPU yang telah saya instal. Saya menemukan Bagaimana cara mendapatkan versi cuda? tapi itu tidak membantu saya di sini.
Jawaban:
Menggunakan nvidia-smi
seharusnya memberi tahu Anda bahwa:
bwood@mybox:~$ nvidia-smi
Mon Oct 29 12:30:02 2012
+------------------------------------------------------+
| NVIDIA-SMI 3.295.41 Driver Version: 295.41 |
|-------------------------------+----------------------+----------------------+
| Nb. Name | Bus Id Disp. | Volatile ECC SB / DB |
| Fan Temp Power Usage /Cap | Memory Usage | GPU Util. Compute M. |
|===============================+======================+======================|
| 0. GeForce GTX 580 | 0000:25:00.0 N/A | N/A N/A |
| 54% 70 C N/A N/A / N/A | 25% 383MB / 1535MB | N/A Default |
|-------------------------------+----------------------+----------------------|
| Compute processes: GPU Memory |
| GPU PID Process name Usage |
|=============================================================================|
| 0. Not Supported |
+-----------------------------------------------------------------------------+
nvidia-smi
seperti ini:locate nvidia-smi
lspci
. Misalnya: stackoverflow.com/questions/10310250/…
Di sistem linux mana pun dengan driver NVIDIA yang diinstal dan dimuat ke kernel, Anda dapat menjalankan:
cat /proc/driver/nvidia/version
untuk mendapatkan versi modul kernel NVIDIA yang dimuat saat ini, misalnya:
$ cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX x86_64 Kernel Module 304.54 Sat Sep 29 00:05:49 PDT 2012
GCC version: gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)
nvidia-smi
adalah:Failed to initialize NVML: GPU access blocked by the operating system
Failed to initialize NVML: Driver/library version mismatch
dari nvidia-smi
.
modinfo
melakukan triknya.
root@nyx:/usr/src# modinfo nvidia|grep version:
version: 331.113
nvidia_XXX
sesuai dengan seri driver utama yang telah saya instal, dan karena modinfo
tidak mendukung wildcard atau nama parsial yang cocok, saya harus melakukan ini modinfo $(find /lib/modules/$(uname -r) -iname nvidia_*.ko | head -1) | grep ^version:
yang mengembalikan versi driver mayor dan minor yang benar.
modinfo
memiliki --field
opsi baris perintah. Sehingga Anda dapat melewati grep: modinfo nvidia --field version
. Juga, di ubuntu 16.04 ini sepertinya tidak berfungsi. Saya selalu mendapatkan ERROR: Module nvidia not found
.
[CATATAN: Saya tidak menghapus jawaban saya dengan sengaja, jadi orang-orang melihat bagaimana cara untuk tidak melakukannya]
Jika Anda menggunakan:
me@over_there:~$ dpkg --status nvidia-current | grep Version | cut -f 1 -d '-' | sed 's/[^.,0-9]//g'
260.19.06
Anda akan mendapatkan versi paket driver nVIDIA yang diinstal melalui mekanisme pengemasan distribusi Anda. Tetapi ini mungkin bukan versi yang sebenarnya berjalan sebagai bagian dari kernel Anda sekarang.
Untuk memperluas jawaban ccc, jika Anda ingin memasukkan kueri kartu dengan skrip, berikut adalah informasi di situs Nvidia tentang cara melakukannya:
https://nvidia.custhelp.com/app/answers/detail/a_id/3751/~/useful-nvidia-smi-queries
Juga, saya menemukan utas ini meneliti PowerShell. Berikut adalah contoh perintah yang menjalankan utilitas untuk mendapatkan memori sebenarnya yang tersedia di GPU untuk Anda mulai.
# get gpu metrics
$cmd = "& 'C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi' --query-gpu=name,utilization.memory,driver_version --format=csv"
$gpuinfo = invoke-expression $cmd | ConvertFrom-CSV
$gpuname = $gpuinfo.name
$gpuutil = $gpuinfo.'utilization.memory [%]'.Split(' ')[0]
$gpuDriver = $gpuinfo.driver_version
Jika Anda perlu mendapatkannya di program dengan Python pada sistem Linux untuk reproduktifitas:
with open('/proc/driver/nvidia/version') as f:
version = f.read().strip()
print(version)
memberikan:
NVRM version: NVIDIA UNIX x86_64 Kernel Module 384.90 Tue Sep 19 19:17:35 PDT 2017
GCC version: gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.5)