Force GTX1080 performance level to reduce power consumption under Linux

Same problem for me with 980 Ti. I’ve been using this for a long time:

Option "RegistryDwords" "PowerMizerEnable=0x1; PerfLevelSrc=0x3333; PowerMizerDefault=0x2; PowerMizerDefaultAC=0x2"

This keeps the GPU at a max of 405MHz core and 1620MHz memory instead of going to 1582MHz core and 7010MHz memory. It keeps the cooler’s fans off. I don’t need full speed on this GPU on Linux. I only need the full speed when booting to Windows to play games.

At least that’s how it was for a couple years. Now I discovered that this sometimes doesn’t work. I don’t know when the problem started. I only noticed recently, because the fans of the GPU started spinning.

When I looked at the clocks in nvidia-settings, the clocks would go to max and the maximum power level (3) was highlighted. The GPU fan would then also activate after a while. I rebooted, and this stopped happening. The GPU would only go to level 2 (405MHz.) Now today, it stopped working again. I rebooted again, and that fixed it.

It seems that the setting is only respected for a while, and then the driver starts ignoring it, requiring a reboot?