Remove "P2 forced" state from drivers

Why every running CUDA programs force the GPU to P2 state. It’s really annoying:

  • There is no way to disable that behavior. (no NVreg_* options in nvidia kernel module).
  • It prevents power saving when decoding with NVDEC (GPU clock doesn’t decrease bellow base clock).
  • It reduces GPU performance of CUDA programs and games during encoding sessions.

There are topics from 2017/2018 complaining about that:

A least add an option such as kernel parameters to disable “P2 forced” state when running CUDA.

2 Likes

It is 2024 - and this issue make Nvidia GPU video acceleration pointless in Linux.

lets get nvidia to notice this post and make some changes. I agree it’s really weird seeing this forced and it shouldn’t behave like this.

this issue is especially annoying on my system because it causes the fans on my founders edition 3070 card to spin up for no reason when watching videos at 1440p / 4k. The card is only at 42c and the fans are still spinning. They’re easily the loudest and whiniest fans in my system too.

Hi guys, any progress?
Also, why Nvidia developers not replying to similar question? What are they doing all day? Tracking stock price?

I found that setting disable_vrr_memclk_switch to 1 in the nvidia-modeset module forces the GPU to P0 even if you are running CUDA programs and that also happens with certain combination of screen refresh rate.

Still occuring on 565 drivers. Nvidia, what is going on?

Same for 570 and 575.