Lorsque je cours, nvidia-smi
je reçois le message suivant:
Failed to initialize NVML: Driver/library version mismatch
Il y a une heure, j'ai reçu le même message et j'ai désinstallé ma bibliothèque cuda et j'ai pu exécuter nvidia-smi
, obtenant le résultat suivant:
Après cela, j'ai téléchargé à cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb
partir de la page officielle de NVIDIA , puis simplement:
sudo dpkg -i cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda
export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
Maintenant, j'ai installé cuda, mais j'obtiens l'erreur de non-correspondance mentionnée.
Quelques informations potentiellement utiles:
Courir cat /proc/driver/nvidia/version
je reçois:
NVRM version: NVIDIA UNIX x86_64 Kernel Module 378.13 Tue Feb 7 20:10:06 PST 2017
GCC version: gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)
J'utilise Ubuntu 16.04.2 LTS.
La version du noyau est: 4.4.0-66-générique.
Merci!
Réponses:
Surprise surprise, le redémarrage a résolu le problème (je pensais l'avoir déjà essayé).
La solution mentionnée par Robert Crovella dans les commentaires peut également être utile à quelqu'un d'autre, car elle est assez similaire à ce que j'ai fait pour résoudre le problème la première fois que je l'ai eu.
la source
/var/log/apt/history.log
sur Ubuntu a révélé que le système a automatiquement mis à jour libcuda, ce qui nécessitait probablement un redémarrage pour continuer à fonctionner correctement. J'ai depuis désactivé ces mises à jour dans l'espoir de ne plus les revoir.nvidia-390
). Voir ma réponse cisudo reboot now
et d'autres non.Comme l'a dit @etal, le redémarrage peut résoudre ce problème, mais je pense qu'une procédure sans redémarrage aidera.
Pour le chinois, consultez mon blog -> 中文 版
Le message d'erreur
dites-nous que le module du noyau du pilote Nvidia (kmod) a une mauvaise version, nous devons donc décharger ce pilote, puis charger la bonne version de kmod
Comment faire ça ?
Tout d'abord, nous devons savoir quels pilotes sont chargés.
vous pouvez obtenir
notre objectif final est de décharger le
nvidia
mod, nous devons donc décharger le module dépend denvidia
puis déchargez
nvidia
Dépannage
si vous obtenez une erreur comme
rmmod: ERROR: Module nvidia is in use
, qui indique que le module du noyau est en cours d'utilisation, vous devez tuer le processus utilisant le kmod:puis tuer ces processus, puis continuer à décharger les kmods
Tester
confirmez que vous avez réussi à décharger ces kmods
vous ne devriez rien obtenir, puis confirmez que vous pouvez charger le bon pilote
vous devriez obtenir la sortie correcte
la source
J'avais donc ce problème, aucun des autres remèdes n'a fonctionné. Le message d'erreur était opaque, mais la vérification de dmesg était la clé:
Cependant, j'avais complètement supprimé la version 384 et supprimé tous les pilotes de noyau restants
nvidia-384*
. Mais même après le redémarrage, j'obtenais toujours cela. Voir cela signifiait que le noyau était toujours compilé à la référence 384, mais ne trouvait que 410. J'ai donc recompilé mon noyau:Et puis ça a marché.
Après avoir supprimé 384, j'avais encore 384 fichiers dans: /var/lib/dkms/nvidia-XXX/XXX.YY/4.13.0-43-generic/x86_64/module /lib/modules/4.13.0-43-generic/ noyau / pilotes
Je recommande d'utiliser la
locate
commande (non installée par défaut) plutôt que de rechercher le système de fichiers à chaque fois.la source
locate nvidia-smi
. J'ai utilisé la commande pour déterminer qu'un autre pilote a été installé.uname -r
Ne m'a pas aidé.dmesg
sortie:NVRM: API mismatch: the client has the version 418.67, but NVRM: this kernel module has the version 430.26. Please NVRM: make sure that this kernel module and all NVIDIA driver NVRM: components have the same version.
J'ai reçu l'erreur
failed to initialize NVML: Driver/Library version mismatch
de mon indicateur de température nvidia-gpu-temperature. Et nvidia-smi n'a pu imprimer aucune information. J'ai essayé de trouver s'il y avait d'autres versions du pilote nvidia installées dans mon ubuntu. Mais je viens de trouver nvidia-driver-390. En fin de compte, celareboot
m'a aidé à résoudre le problème.la source
Les 2 premières réponses ne peuvent pas résoudre mon problème. J'ai trouvé une solution sur le forum officiel de Nvidia qui a résolu mon problème. Les informations d'erreur ci-dessous peuvent être provoquées par l'installation de deux versions différentes du pilote par des approches différentes. Par exemple, installez le pilote Nvidia par apt et le programme d'installation officiel.
Pour résoudre ce problème, il suffit d'exécuter l'une des deux commandes suivantes.
la source
Cela m'est également arrivé sur Ubuntu 16.04 en utilisant le
nvidia-348
package (dernière version nvidia sur Ubuntu 16.04).Cependant, je pouvais résoudre le problème en installant
nvidia-390
via le PPA des pilotes GPU propriétaires .Donc, une solution au problème décrit sur Ubuntu 16.04 est la suivante:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-390
Remarque: ce guide suppose une installation Ubuntu propre. Si vous avez installé des pilotes précédents, un redémarrage peut être nécessaire pour recharger tous les modules du noyau.
la source
Eu aussi le problème. (Je lance Ubuntu 18.04)
Ce que j'ai fait:
dpkg -l | grep -i nvidia
Ensuite
sudo apt-get remove --purge nvidia-381
(et chaque version en double, dans mon cas, j'avais 381, 384 et 387)Ensuite,
sudo ubuntu-drivers devices
pour lister ce qui est disponibleEt je choisis
sudo apt install nvidia-driver-430
Après cela, a
nvidia-smi
donné la sortie correcte (pas besoin de redémarrer). Mais je suppose que vous pouvez redémarrer en cas de doute.J'ai également suivi cette installation pour réinstaller cuda + cudnn.
la source
J'ai rencontré ce problème après une mise à jour normale du noyau sur une machine CentOS. Étant donné que tous les pilotes et bibliothèques CUDA et nVidia ont été installés via les référentiels YUM, j'ai réussi à résoudre les problèmes en suivant les étapes suivantes:
Il s'est assuré que mon noyau et mon pilote nVidia sont cohérents. Je pense que le redémarrage peut entraîner le chargement d'une mauvaise version du module du noyau.
la source
Je dois redémarrer mes noyaux et supprimer tous les packages que j'ai installés précédemment (lors de la première installation), assurez-vous de supprimer tous les packages, même après avoir supprimé les packages par la commande ci-dessous
les paquets comme "libtinfo6: i386" ne sont pas supprimés
J'utilise Ubuntu 20.04 et Nvidia-driver-440 pour cela, vous devez supprimer tous les packages affichés ci-dessous image
Liste de tous les packages à supprimer:
comme indiqué dans l'image, assurez-vous que le package que vous installez est de la bonne taille qui est 207 Mo pour Nvidia-driver-440, si c'est moins, cela signifie que vous n'avez pas supprimé tous les packages.
la source
J'avais réinstallé le pilote nvidia: exécutez ces commandes en
root
mode:systemctl isolate multi-user.target
modprobe -r nvidia-drm
Réinstallez le pilote Nvidia:
chmod +x NVIDIA-Linux-x86_64–410.57.run
systemctl start graphical.target
et enfin vérifier
nvidia-smi
Merci à: Comment installer les pilotes Nvidia et CUDA-10.0 pour le GPU RTX 2080 Ti sur Ubuntu-16.04 / 18.04
Comment décharger le module du noyau 'nvidia-drm'?
la source
Pour être complet, j'ai également rencontré ce problème. Dans mon cas, il s'est avéré que parce que j'avais défini Clang comme mon compilateur par défaut (en utilisant
update-alternatives
), je n'ai pasnvidia-driver-440
réussi à compiler (vérifier/var/crash/
) même si je n'ai publiéapt
aucun avertissement. Pour moi, la solution consistait àapt purge nvidia-*
,cc
revenir à utilisergcc
, redémarrer et réinstallernvidia-driver-440
.la source
J'ai validé le conteneur dans une image docker. Ensuite, je recrée un autre conteneur à l'aide de cette image Docker et le problème a disparu.
la source
Ces réponses n'ont pas fonctionné pour moi:
https://stackoverflow.com/a/43023000/1179925
https://stackoverflow.com/a/45319156/1179925
https://stackoverflow.com/a/54349675/1179925
dmesg
Désinstallez l'ancien pilote
418.67
et installez le nouveau pilote430.26
(téléchargementNVIDIA-Linux-x86_64-430.26.run
):cat /proc/driver/nvidia/version
la source
redémarrer. Si le problème persiste:
pour cent / rhel
puis
la source
Pour mon cas, j'ai installé le pilote nvidia puis le cuda. J'ai trouvé que cela peut être résolu en installant simplement cuda. https://developer.nvidia.com/cuda-toolkit
la source