Демон NVIDIA persistence постоянно запускается и останавливается в системном журнале

Демон NVIDIA persistence постоянно запускается и останавливается в системном журнале

Я использую Ubuntu 17.10 и имею как карту Intel, так и Nvidia GTX 1060 (обычно выбираю последнюю), с версией драйвера387.22.

Я заметил следующие записи в моем /var/log/syslog:

  • Nov 22 18:46:36 [machine name omitted] systemd[1]: Starting NVIDIA Persistence Daemon...
  • [некоторые несвязанные записи]
  • Nov 22 18:46:36 [...] systemd[1]: Started NVIDIA Persistence Daemon.
  • [некоторые несвязанные записи]
  • 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.

Самое странное, что эти записи (и несколько связанных с ними, которые я, возможно, здесь опустил) происходятнепрерывно, несколько раз и иногда в пределах одной и той же временной метки.

Мне это кажется подозрительным — почему демон постоянно запускается и останавливается таким образом, и не повлияет ли это серьезно на производительность?

Я спрашиваю, потому что я все еще не понимаю, почему моя машина работает так плохо (особенно в играх) в версии 17.10 по сравнению с 17.04 - см. соответствующую информациювопрос.

Очевидно, что главными подозреваемыми здесь являются рабочий стол и зависимости, а не столько версия драйвера (насколько я помню, то же самое было и с предыдущей версией).

Вопросы

  • Является ли вышеизложенное нормальным поведением, и если нет, как это исследовать/исправить?
  • Может ли это быть связано с проблемами производительности при запуске ресурсоемких приложений, таких как игры?

Редактировать

Интересно, что если я вхожу в систему со старого рабочего стола Unity, эти записи в журнале, похоже, не появляются. Производительность также кажется намного более быстрой с точки зрения чистого рабочего стола (хотя это может быть мое воображение), но игровая производительность практически такая же.

решение1

Хотя это старая проблема, я сам с ней сталкивалсяКубунту 18.04идрайвер nvidia 390. А именно, демон nvidia-persistence спамит экран во время загрузки (иногда, не всегда). Таким образом, мое решение обходит стандартный запуск демона nvidia при загрузке системы, используяотдельная служба systemd.

Как уже говорилось ранее, похоже, что это неправильная настройка запуска демона nvidia-persistence. Точнее, для меня проблема в правилах udev. Таким образом, я изменил /lib/udev/rules.d/71-nvidia.rulesи закомментировал действия при выключении и включении питания. Как упоминалось в других ответах, вы также можете закомментировать строки для загрузки и выгрузки.

Теперь демон не запускается при включении питания. Следовательно, нам придется запланировать запуск демона вручную. Этого можно добиться, скопировав /lib/systemd/system/nvidia-persistenced.service, например,

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

Теперь измените /lib/systemd/system/nvidia-persistenced-manual.serviceтак, чтобы выглядело примерно так:

[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

Чтобы включить службу, выполните

sudo systemctl enable nvidia-persistenced-manual.service

и если старая служба все еще включена, запустите

sudo systemctl disable nvidia-persistenced.service

Таким образом, демон будет запускаться при запуске системы. Не стесняйтесь изменять строку, ExecStart=/usr/bin/nvidia-persistencedнапример, include --verboseили --user [...].

Имейте в виду, что по умолчанию демон работает справа root. Если вы этого не хотите, обязательно запустите демон с --userаргументом.

В целом это не идеальное решение, но оно помогло исправить ошибку в моей системе.

решение2

Записи вызваны ненужным файлом конфигурации из пакета Nvidia:

  • Запустите команду nvidia-smi из оболочки, вы должны увидеть где-то слева вверху «Persistence-M On».
  • Вы можете проверить, нормально ли работают драйверы Nvidia без «Persistence-M».
  • Перейдите в /lib/systemd/system/ . Здесь вы найдете файл nvidia-persistenced.service. Переименуйте или переместите.
  • Перейдите в /lib/udev/rules.d/
  • Откройте как root файл конфигурации 71-nvidia.rules
  • Закомментируйте # действия при включении и выключении питания, а также при загрузке и выгрузке.
  • Перезагрузите и проверьте.

Спасибо void75, forums.linuxmint.com

Связанный контент