web-dev-qa-db-fra.com

Boucle de connexion probablement due aux pilotes NVIDIA avec CUDA installé

Il y a quelques jours, j'ai exécuté un Sudo apt update + upgrade sur mon Ubuntu 16.04. Je ne l'avais pas fait depuis environ 2 mois. Entre temps, j'avais changé ma carte graphique d'une GTX 1060 à une GTX 1070.

Quand aujourd’hui j’essayais de me connecter, j’ai découvert que j’étais entré dans une boucle de connexion infinie agaçante. Voici le contenu de mon journal xsessions-errors:

X Error of failed request:  BadWindow (invalid Window parameter)
  Major opcode of failed request:  155 (NV-GLX)
  Minor opcode of failed request:  4 ()
  Resource id in failed request:  0x3d0
  Serial number of failed request:  46
  Current serial number in output stream:  46
openConnection: connect: No such file or directory
cannot connect to brltty at :0
[...]

En regardant les réponses prometteuses à cette question , j’ai essayé ce qui suit:

  1. Vérifiez la propriété de .Xauthority m'appartient, et non root (il m'appartient)
  2. Reconfigurer lightdm
  3. Réinstallez lightdm
  4. Vérifiez si mon /home/ est plein (sa consommation est de 44%)

tous sans succès. Ensuite, j'ai commencé à croire que mon problème résidait dans une mise à jour des pilotes NVIDIA, car je lisais plusieurs sources sur différents sites Web, expliquant qu'il s'agissait d'un problème courant. Cela vaut la peine d'ajouter que je n'ai apporté aucune modification récente à ./profile ou similaire, et que je n'ai jamais exécuté la commande startx de ma vie.

J'ai trouvé les solutions potentielles à mon problème qui tournent autour des pilotes NVIDIA:

  • installer les pilotes nvidia-current (plus anciens que ceux pris en charge par NVIDIA) comme proposé ici ;
  • réinstallation des pilotes NVIDIA en exécutant nvidia-installer.sh comme proposé ici ;

Mon problème est que sur mon ordinateur, j'ai passé des dizaines d'heures à configurer CUDA, dans un équilibre délicat avec les pilotes NVIDIA et divers packages. Pour installer CUDA, je devais également installer une version spécifique du noyau Ubuntu (4.4).

Y a-t-il une chance que mon environnement CUDA se casse si je touche les pilotes? Y at-il autre chose que je pourrais essayer de résoudre le problème?

1
raggot

Aux autres personnes confrontées au même problème, je suggère d'essayer les solutions suivantes:

mv .Xauthority .Xauthority-backup

qui renomme .Xauthority et force la création d’un nouveau lors de la prochaine tentative de connexion. Dans le cas où le problème se poserait là, alors la connexion fonctionnerait.

Dans mon cas, cependant, ce qui a vraiment fonctionné a été de faire ce que j’avais peur de faire, à savoir la réinstallation des pilotes NVIDIA. Pour les utilisateurs de CUDA, la version du pilote à installer est définie par documentation . Dans mon cas, comme CUDA 9.1, c’est au moins la version du pilote 390.46 (au moment où j’écris cette réponse, bien sûr).

J'ai suivi les instructions trouvées sur ce site pour (ré) installer les pilotes dont j'avais besoin. En fait, j'ai également trouvé ce message sur le forum CUDA , écrit par un modérateur, qui explique qu'en raison de son expérience, l'utilisation de cette source pour les pilotes ne fonctionne pas toujours, car ils ne sont pas publiés officiellement par NVIDIA. Dans mon cas, cela fonctionnait toujours et je le partage donc.

Tout d’abord, supprimez les pilotes NVIDIA installés:

Sudo apt-get purge nvidia*

Ajoutez le référentiel pour le pilote graphique:

Sudo add-apt-repository ppa:graphics-drivers/ppa
Sudo apt update

Puis installez la version correcte des pilotes (dans mon cas, xxx = 390)

Sudo apt install nvidia-xxx

Et enfin

reboot

Le problème de connexion devrait maintenant être résolu. Dans mon cas, l'environnement CUDA n'a pas été affecté et tout mon projet a toujours fonctionné normalement.

0
raggot

La solution est d'essayer de réinstaller le pilote et de reconfigurer lightdm également. Dans le pire des cas, vous devrez installer CUDA à nouveau, mais essayez tout d'abord de réinstaller le pilote en téléchargeant le programme d'installation à partir de nvidia (le script Shell).

Y a-t-il une chance que mon environnement CUDA se casse si je touche les pilotes? Y at-il autre chose que je pourrais essayer de résoudre le problème?

Pas nécessairement. Tant que vos pilotes sont en place. nvcc devrait fonctionner correctement.

0
Pradeep Kumar