it-swarm.com.de

Installation der NVIDIA / CUDA-Treiber unter Ubuntu 16.04

Ich habe eine neue Desktop-Maschine mit einem NVIDIA Quadro M2000. Ich benutze Ubuntu 16.04 und wollte die richtigen Treiber für meine Grafikkarte installieren.

Ich ging in "Zusätzliche Fahrer" und der Nouveau-Fahrer wurde ausgewählt. Ich habe versucht, den proprietären NVIDIA-Treiber auszuwählen, der jedoch nach 5 Sekunden automatisch auf Nouveau zurückgeschaltet wurde. Es hieß für den proprietären Treiber, dass ich nvidia-367 benötige.

Dieses Paket war nicht in den verfügbaren Paketen in Synaptic enthalten. Also habe ich cuda-repo-ubuntu1604-8-0-local.deb von hier heruntergeladen (wenn ich mich nicht irre, ist es ein Paket, das andere Pakete enthält, aber ohne sie zu installieren?):

Sudo dpkg -i cuda-repo-ubuntu1604-8-0-local.deb

Dann könnte ich tun

Sudo apt-get install nvidia-367

Danach und nach einem Neustart konnte ich unter "Zusätzliche Treiber" endlich den NVIDIA-Treiber auswählen.

Wenn ich nvidia-smi ausführe, erhalte ich die Fehlermeldung:

Failed to initialize NVML: Driver/library version mismatch

Hier ist die Ausgabe einiger Befehle:

$ Sudo ubuntu-drivers devices (Ubuntu-Treiber)

== cpu-microcode.py == 
driver   : intel-microcode - distro non-free

== /sys/devices/pci0000:00/0000:00:02.0/0000:03:00.0 == 
vendor   : NVIDIA Corporation
modalias : pci:v000010DEd00001430sv00001028sd00001190bc03sc00i00 
driver   : nvidia-367 - distro non-free recommended
driver   : xserver-xorg-video-nouveau - distro free builtin

$ dpkg -l | grep -i nvidia (Installierte Pakete)

ii  bbswitch-dkms                              0.8-3ubuntu1                                  AMD64        Interface for toggling the power on NVIDIA Optimus video cards
ii  libcuda1-367                               367.57-0ubuntu0.16.04.1                       AMD64        NVIDIA CUDA runtime library
ii  nvidia-367                                 367.57-0ubuntu0.16.04.1                       AMD64        NVIDIA binary driver - version 367.57
ii  nvidia-367-dev                             367.57-0ubuntu0.16.04.1                       AMD64        NVIDIA binary Xorg driver development files
ii  nvidia-opencl-icd-367                      367.57-0ubuntu0.16.04.1                       AMD64        NVIDIA OpenCL ICD
ii  nvidia-prime                               0.8.2                                         AMD64        Tools to enable NVIDIA's Prime

$ Sudo lshw -numeric -C display (Hardware)

*-display
    description: VGA compatible controller
    produit: NVIDIA Corporation [10DE:1430]
    fabriquant: NVIDIA Corporation [10DE]
    identifiant matériel: 0
    information bus: [email protected]:03:00.0
    version: a1
    bits: 64 bits
    horloge: 33MHz
    fonctionnalités: pm msi pciexpress vga_controller bus_master cap_list rom
    configuration: driver=nvidia latency=0
    ressources: irq:34 mémoire:f2000000-f2ffffff mémoire:e0000000-efffffff mémoire:f0000000-f1ffffff portE/S:8000(taille=128) mémoire:f3000000-f307ffff

$ Sudo find / -name 'libnvidia-ml*' (NVIDIA-Bibliotheken)

/usr/lib32/nvidia-367/libnvidia-ml.so.1
/usr/lib32/nvidia-367/libnvidia-ml.so.367.57
/usr/lib32/nvidia-367/libnvidia-ml.so
/usr/lib/nvidia-367/libnvidia-ml.so.1
/usr/lib/nvidia-367/libnvidia-ml.so.367.57
/usr/lib/nvidia-367/libnvidia-ml.so
find: «/run/user/1000/gvfs»: Permission non accordée

Ich habe nvidia-settings installiert, aber es ist eine Version 367.48. Ich wollte keine Versionsinkongruenz mehr, also habe ich es deinstalliert

Grundsätzlich scheint mein Treiber v367.57 zu sein, aber ich weiß nicht, wie ich nach der Bibliotheksversion suchen soll (abgesehen von libcuda1-367, die sich bereits bei 367.57 befindet).

Weiß jemand, wie man dieses Problem behebt/wo man die Bibliotheksversion überprüft, die die Nichtübereinstimmung verursacht/ob es ein Paket gibt, das ich nicht installiert habe?

Übrigens finde ich es seltsam, dass lshw mir nicht den Namen meiner Grafikkarte gibt, ich weiß nicht, ob das ein Zeichen von irgendetwas ist ...

Danke,

2
matthieu

Nun, ein Neustart scheint den Trick getan zu haben ...

Jetzt sagt mir nvidia-settings, dass die Treiberversion 367.57 ist, während sie vorher 367.48 sagte.

nvidia-smi gibt:

Tue Nov  8 17:33:27 2016       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 367.57                 Driver Version: 367.57                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  Quadro M2000        Off  | 0000:03:00.0      On |                  N/A |
| 56%   39C    P0    23W /  75W |   2103MiB /  4034MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0      1210    G   /usr/lib/xorg/Xorg                             269MiB |
|    0      2374    G   compiz                                         112MiB |
|    0      2948  C+G   /usr/local/MATLAB/R2016b/bin/glnxa64/MATLAB   1643MiB |
|    0      5024    G   ...s-passed-by-fd --v8-snapshot-passed-by-fd    74MiB |
+-----------------------------------------------------------------------------+
1
matthieu