6

I am on Ubuntu 17.10 and have both an intel and Nvidia GTX 1060 card (the latter usually selected), with driver version 387.22.

I have noticed the following entries in my /var/log/syslog:

  • Nov 22 18:46:36 [machine name omitted] systemd[1]: Starting NVIDIA Persistence Daemon...
  • [some unrelated entries]
  • Nov 22 18:46:36 [...] systemd[1]: Started NVIDIA Persistence Daemon.
  • [some unrelated entries]
  • 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.

The weird part is that those entries (and a few related I might be omitting here) are occurring continuously, multiple times and sometimes within the same timestamp.

That sounds suspicious to me - why is the daemon continuously started and stopped this way and wouldn't that severely impact on performance?

I'm asking because I am still clueless as per why my machine performs so poorly (especially with regards to gaming) in 17.10, compared to 17.04 - see related question.

Obviously the desktop and dependencies are prime suspects here, not so much the driver version (as I recall seeing the exact same with a previous version).

Questions

  • Is the above reflecting a normal behavior, and if not, how to investigate/fix it?
  • Could that relate to performance issues when running demanding applications, such as games?

Edit

Interestingly, if I log on with the old Unity desktop, these log entries do not seem to occur. Performance also seems a lot snappier from a pure desktop perspective (although it might be my imagination), but the gaming performance is quite the same.

6

Although this is an old problem, I've still encountered it myself on Kubuntu 18.04 and nvidia driver 390. Namely, the nvidia-persistence daemon spams the screen during boot (sometimes, not always). Thus, my solution circumvents the standard nvidia daemon startup on system boot by using a separate systemd service.

Like stated before, it seems to be a misconfiguration of starting the nvidia-persistence daemon. More precisely, the udev rules seem to be the problem for me. Thus, I modified /lib/udev/rules.d/71-nvidia.rules and commented out the actions under power-off and power-on. Like mentioned in other answers, you may also comment out the lines for loading and unloading.

Now the daemon does not start on power-on. Consequently, we have to schedule the start of the daemon manually. We can achieve that by copying /lib/systemd/system/nvidia-persistenced.service, e.g.

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

Now modify /lib/systemd/system/nvidia-persistenced-manual.service to look something like this:

[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

To enable the service, execute

sudo systemctl enable nvidia-persistenced-manual.service

and if the old service is still enabled, run

sudo systemctl disable nvidia-persistenced.service

This way, the daemon will start on system startup. Feel free to modify the line ExecStart=/usr/bin/nvidia-persistenced to e.g. include --verbose or --user [...].

Keep in mind, that in my default way, the daemon is running with root permissions. If you do not want this, make sure to run the daemon with the --user argument.

Altogether, this is not a perfect solution, but it was able to fix the bug on my system.

2
  • 2
    This solved the problem for me on Ubuntu 18.04
    – delf
    Sep 1 '19 at 19:19
  • 1
    Awfully sorry for coming back this late - I overhauled the system back then and forgot all about this issue. I can't verify it works for me anymore but at least it did so for one user and the answer's well explained so I'm going to accept. Many thanks
    – Mena
    Jan 27 '21 at 11:24
3

The entries are caused by an unnecessary configuration file from the Nvidia package:

  • Run the command nvidia-smi from the shell, you must see somewhere on the left top "Persistence-M On".
  • You can test if your Nvidia drivers work ok without "Persistence-M".
  • Go to /lib/systemd/system/ . Here you will find a file called nvidia-persistenced.service. Rename or move.
  • Go to /lib/udev/rules.d/
  • Open as root the config file 71-nvidia.rules
  • Comment out # the actions under power on and power off and loading and unloading.
  • Restart and check.

Thanks to void75, forums.linuxmint.com

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.