NVIDIA 지속성 데몬이 syslog에서 지속적으로 시작 및 중지됨

NVIDIA 지속성 데몬이 syslog에서 지속적으로 시작 및 중지됨

저는 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.04와 비교하여 17.10에서 내 컴퓨터의 성능이 왜 그렇게 좋지 않은지(특히 게임과 관련하여) 여전히 단서가 없기 때문에 질문합니다. 관련 항목을 참조하세요.질문.

분명히 여기서는 데스크톱과 종속성이 유력한 용의자이며 드라이버 버전은 그다지 중요하지 않습니다(이전 버전에서도 똑같은 내용을 본 기억이 납니다).

질문

  • 위의 내용이 정상적인 동작을 반영하고 있습니까? 그렇지 않은 경우 이를 조사/수정하는 방법은 무엇입니까?
  • 게임과 같이 까다로운 응용 프로그램을 실행할 때의 성능 문제와 관련이 있을 수 있습니까?

편집하다

흥미롭게도 이전 Unity 데스크톱으로 로그온하면 이러한 로그 항목이 발생하지 않는 것 같습니다. 순수한 데스크톱 관점에서 보면 성능도 훨씬 더 빨라 보이지만(내 상상일 수도 있지만) 게임 성능은 거의 같습니다.

답변1

이것은 오래된 문제이지만, 나는 여전히 이 문제에 직면했습니다.쿠분투 18.04그리고엔비디아 드라이버 390. 즉, nvidia-persistence 데몬은 부팅 중에 화면에 스팸을 보냅니다(항상 그런 것은 아님). 따라서 내 솔루션은 다음을 사용하여 시스템 부팅 시 표준 nvidia 데몬 시작을 우회합니다.별도의 시스템 서비스.

앞서 언급했듯이 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포함하도록 줄을 자유롭게 수정하세요 .--verbose--user [...]

내 기본 방식으로 데몬은 다음과 같이 실행됩니다.루트 권한. 이를 원하지 않으면 인수를 사용하여 데몬을 실행하십시오 --user.

전체적으로 이것은 완벽한 솔루션은 아니지만 내 시스템의 버그를 수정할 수 있었습니다.

답변2

항목은 Nvidia 패키지의 불필요한 구성 파일로 인해 발생합니다.

  • 셸에서 nvidia-smi 명령을 실행하면 왼쪽 상단에 "Persistence-M On"이 표시되어야 합니다.
  • "Persistence-M" 없이 Nvidia 드라이버가 제대로 작동하는지 테스트할 수 있습니다.
  • /lib/systemd/system/ 으로 이동합니다. 여기에서 nvidia-persistenced.service라는 파일을 찾을 수 있습니다. 이름을 바꾸거나 이동하세요.
  • /lib/udev/rules.d/로 이동하세요.
  • 구성 파일 71-nvidia.rules를 루트로 엽니다.
  • # 전원 켜기, 끄기, 로드 및 언로드 작업을 주석으로 처리합니다.
  • 다시 시작하고 확인하세요.

void75, forums.linuxmint.com에게 감사드립니다.

관련 정보