web-dev-qa-db-fra.com

Le démon de persistance NVIDIA démarre et s’arrête continuellement dans syslog

Je suis sous Ubuntu 17.10 et possède à la fois une carte Intel et une carte Nvidia GTX 1060 (cette dernière généralement sélectionnée), avec la version du pilote 387.22 .

J'ai remarqué les entrées suivantes dans mon /var/log/syslog:

  • Nov 22 18:46:36 [machine name omitted] systemd[1]: Starting NVIDIA Persistence Daemon...
  • [quelques entrées sans rapport]
  • Nov 22 18:46:36 [...] systemd[1]: Started NVIDIA Persistence Daemon.
  • [quelques entrées sans rapport]
  • Nov 22 18:46:36 [...] systemd[1]: Stopping NVIDIA Persistence Daemon...
  • Nov 22 18:46:36 [...] nvidia-persistenced: PID file unlocked.
  • Nov 22 18:46:36 [...] nvidia-persistenced: PID file closed.
  • Nov 22 18:46:36 [...] nvidia-persistenced: The daemon no longer has permission to remove its runtime data directory /var/run/nvidia-persistenced
  • Nov 22 18:46:36 [...] nvidia-persistenced: Shutdown (1115)
  • Nov 22 18:46:36 [...] gdm3: GdmDisplay: display lasted 1.202396 seconds
  • Nov 22 18:46:36 [...] systemd[1]: Stopped NVIDIA Persistence Daemon.

La partie étrange est que ces entrées (et quelques relations que je pourrais omettre ici) se produisent de manière continue , plusieurs fois et parfois dans le même horodatage.

Cela me semble suspect: pourquoi le démon est-il continuellement démarré et arrêté de cette façon et cela n'aurait-il pas un impact grave sur les performances?

Je demande parce que je ne comprends toujours pas pourquoi ma machine fonctionne si mal (en particulier en ce qui concerne les jeux) en 17h10, par rapport à 17,04 - voir à ce sujet question .

Évidemment, le bureau et les dépendances sont les principaux suspects ici, pas tellement la version du pilote (je me souviens d’avoir vu la même chose avec une version précédente).

Questions

  • Ce qui précède reflète-t-il un comportement normal, et si non, comment l'explorer/le corriger?
  • Est-ce que cela pourrait être lié à des problèmes de performances lors de l'exécution d'applications exigeantes, telles que des jeux?

Modifier

Fait intéressant, si je me connecte avec l’ancien bureau Unity, ces entrées de journal ne semblent pas se produire. Les performances semblent également beaucoup plus vives du point de vue du bureau pur (bien que cela puisse être mon imagination), mais les performances de jeu sont quasiment identiques.

3
Mena

Bien que ce soit un vieux problème, je l’ai toujours rencontré moi-même sur Kubuntu 18.04 et pilote nvidia 39. À savoir, le démon nvidia-persistence spams l'écran pendant le démarrage (parfois, pas toujours). Ainsi, ma solution contourne le démarrage standard du démon nvidia au démarrage du système en utilisant un service systemd distinct.

Comme indiqué précédemment, cela semble être une mauvaise configuration pour démarrer le démon nvidia-persistence. Plus précisément, les udev rulres semblent être le problème pour moi. Ainsi, j'ai modifié /lib/udev/rules.d/71-nvidia.rules et commenté les actions sous tension et hors tension. Comme mentionné dans d'autres réponses, vous pouvez également commenter les lignes de chargement et de déchargement.

Maintenant, le démon ne démarre pas à la mise sous tension. Par conséquent, nous devons planifier le démarrage du démon manuellement. Nous pouvons y parvenir en copiant /lib/systemd/system/nvidia-persistenced.service, par exemple.

Sudo cp /lib/systemd/system/nvidia-persistenced.service /lib/systemd/system/nvidia-persistenced-manual.service

Maintenant modifiez /lib/systemd/system/nvidia-persistenced-manual.service pour qu'il ressemble à ceci:

[Unit]
Description=NVIDIA Persistence Daemon
Wants=syslog.target
Requires=local-fs.target

[Service]
Type=forking
User=root
Group=root
ExecStart=/usr/bin/nvidia-persistenced
ExecStopPost=/bin/rm -rf /var/run/nvidia-persistenced

[Install]
WantedBy=multi-user.target

Pour activer le service, exécutez

Sudo systemctl enable nvidia-persistenced-manual.service

et si l'ancien service est toujours activé, exécutez

Sudo systemctl disable nvidia-persistenced.service

De cette façon, le démon démarrera au démarrage du système. N'hésitez pas à modifier la ligne ExecStart=/usr/bin/nvidia-persistenced à par ex. inclure --verbose ou --user [...].

Gardez à l'esprit que, de manière par défaut, le démon s'exécute avec autorisations root. Si vous ne le souhaitez pas, veillez à exécuter le démon avec l'argument --user.

Globalement, ce n'est pas une solution parfaite, mais cela a permis de corriger le bogue sur mon système.

3
André

Les entrées sont causées par un fichier de configuration inutile du package Nvidia:

  • Exécutez la commande nvidia-smi à partir du shell, vous devez voir quelque part en haut à gauche "Persistence-M On".
  • Vous pouvez tester si vos pilotes Nvidia fonctionnent correctement sans "Persistence-M".
  • Allez dans/lib/systemd/system /. Vous trouverez ici un fichier appelé nvidia-persistenced.service. Renommez ou déplacez.
  • Allez à /lib/udev/rules.d/
  • Ouvrez en tant que root le fichier de configuration 71-nvidia.rules
  • Commentez # les actions sous tension et hors tension, ainsi que le chargement et le déchargement.
  • Redémarrez et vérifiez.

Merci à void75, forums.linuxmint.com

1
HDK Bouma