it-swarm.com.de

Wie bekomme ich die nvidia Treiberversion von der Kommandozeile?

Zum Debuggen von CUDA-Code und zum Überprüfen der Kompatibilität muss ich herausfinden, welche nvidia-Treiberversion für die GPU installiert ist. Ich habe gefunden Wie bekomme ich die Cuda-Version? aber das hilft mir hier nicht.

85
Framester

Wenn Sie nvidia-smi verwenden, sollten Sie Folgendes erfahren:

[email protected]:~$ 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                                                 |
+-----------------------------------------------------------------------------+
125
Brendan Wood

Auf einem any Linux-System, auf dem der NVIDIA-Treiber installiert und in den Kernel geladen ist, können Sie Folgendes ausführen:

cat /proc/driver/nvidia/version

um die Version des aktuell geladenen NVIDIA-Kernelmoduls abzurufen, zum Beispiel:

$ 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) 
84
talonmies

modinfo macht den Trick.

[email protected]:/usr/src# modinfo nvidia|grep version:
version:        331.113
11
Michael

[HINWEIS: Ich lösche meine Antwort nicht absichtlich, sodass die Leute sehen, wie sie es nicht tun sollen]

Wenn du benutzt:

[email protected]_there:~$  dpkg --status nvidia-current | grep Version | cut -f 1 -d '-' | sed 's/[^.,0-9]//g'
260.19.06

sie erhalten die Version des nVIDIA-Treiberpakets über den Paketierungsmechanismus Ihrer Distribution. Aber dies möglicherweise nicht ist die Version, die gerade als Teil Ihres Kernels ausgeführt wird.

7
Framester

Windows-Version:

cd\Programme\NVIDIA Corporation\NVSMI

nvidia-smi

2
ccc

Wenn Sie die Antwort von ccc erweitern möchten, wenn Sie die Abfrage der Karte in ein Skript integrieren möchten, finden Sie hier Informationen auf der Nvidia-Site:

https://nvidia.custhelp.com/app/answers/detail/a_id/3751/~/useful-nvidia-smi-queries

Ich fand auch diesen Thread, der Powershell erforscht. Hier ein Beispielbefehl, mit dem das Dienstprogramm ausgeführt wird, um den richtigen Arbeitsspeicher für die GPU zur Verfügung zu stellen.

# 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
1
Jeff Blumenthal

Wenn Sie dies in einem Programm mit Python auf einem Linux-System zur Reproduzierbarkeit benötigen:

with open('/proc/driver/nvidia/version') as f:
    version = f.read().strip()
print(version)

gibt:

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) 
0
Martin Thoma