Kernel module option NVreg_RegistryDwords for PowerMizerEnable doesnt work on 530.41.03

The exact requirement for me is to have the graphics card run with its fans off. This reduces noise while I work.

The card itself automatically keeps the fans disabled when the GPU temperature is low enough and thus it’s safe for it run with passive cooling. In my case, the card’s BIOS uses 60 degrees Celcius as the safe limit.

To keep the GPU under that temperature limit, I previously used the NVreg_RegistryDwords kernel module option to limit the maximum power level the GPU can operate in. If I limited it to level 1 for example, the card would idle at level 0, and when there’s load put on the GPU, it would jump up to level 1, but not higher. This kept the GPU temperature under 50 degrees Celsius at all times, while still providing enough performance for tasks that aren’t gaming related. If I want to actually play a demanding game, I dual boot to Windows. While I work, I run Linux and I need my workstation to be silent and also not waste power.

In recent drivers, the ability to limit the power level through NVreg_RegistryDwords was completely removed, without offering any working alternative. The GPU will jump to its maximum power level and it’s impossible to keep it passively cooled. Limiting power consumption through the nvidia-smi utility that comes with the drivers does NOT work. It only allows a minimum power limit if 150W, which isn’t remotely low enough to keep the card cool. The previous method of limiting the GPU to power level 1 resulted in a power consumption between 25W and 40W, which kept the card cool and silent.

So an alternative is needed to configure the maximum power level the GPU is allowed to use. Perhaps through nvidia-settings.