Low power mode on newer nvidia cards

dos2unix

Well-Known Member
Joined
May 3, 2019
Messages
4,408
Reaction score
4,601
Credits
41,638
I recently got a new rtx 5080. (well, it was new to me). It's a PCIe gen 5 card.
My Motherboard has a PCIe gen 5 slot slot for the video card.

..so far so good, but then I run this...

Code:
Every 5.0s: sudo lspci -vv -s 01:00.0 | grep -E 'LnkCap|LnkSta'

and I get this

Code:
                LnkCap: Port #0, Speed 32GT/s, Width x16, ASPM L1, Exit Latency L1 unlimited
                LnkSta: Speed 2.5GT/s (downgraded), Width x16
                LnkCap2: Supported Link Speeds: 2.5-32GT/s, Crosslink- Retimer+ 2Retimers+ DRS-
                LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete+ EqualizationPhase1+

Huh? what? Speed 2.5GT/s, that's terriible, that's worse than my old radeon, so I go through my UEFI settings
update my drivers, etc... and run the test again, same results.. make no sense.

But its seems the newer nvidia cards have a power saver mode, when not under load. So I run glmark2.
(it could be any GPU stress app). and run that same command in another terminal.

Code:
Every 5.0s: sudo lspci -vv -s 01:00.0 | grep -E 'LnkCap|LnkSta'                                                                                                

                LnkCap: Port #0, Speed 32GT/s, Width x16, ASPM L1, Exit Latency L1 unlimited
                LnkSta: Speed 32GT/s, Width x16
                LnkCap2: Supported Link Speeds: 2.5-32GT/s, Crosslink- Retimer+ 2Retimers+ DRS-
                LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete+ EqualizationPhase1+

Ahhh... much better. 32GT/s, but that only happens when under a load high enough to put it out of power saver mode.
 


I've created the following aliases for use on my RTX 4090 24GB GPU. Use at your own discretion. It's how I shift from Chillhopping YouTube and gear jamming production and gaming modes.


Code:
alias gpu-beast="sudo nvidia-smi -pm 1 && sudo nvidia-smi -pl 600 && sudo nvidia-smi -lgc 3150 && sudo nvidia-smi -lmc 10501 && nvidia-settings -a '[gpu:0]/GPUPowerMizerMode=1' && echo ' KINETIC_GPU: UNLEAS>
alias gpu-chill="sudo nvidia-smi -rgc && sudo nvidia-smi -rmc && sudo nvidia-smi -pl 500 && nvidia-settings -a '[gpu:0]/GPUPowerMizerMode=0' && echo ' KINETIC_GPU: BALANCED [500W | AUTO]'"

Outputs

Code:
gpu-chill
All done.
All done.
Power limit for GPU 00000000:0A:00.0 was set to 500.00 W from 600.00 W.
All done.

  Attribute 'GPUPowerMizerMode' ([gpu:0]) assigned value 0.

 KINETIC_GPU: BALANCED [500W | AUTO]


Code:
All done.
Power limit for GPU 00000000:0A:00.0 was set to 600.00 W from 500.00 W.
All done.
GPU clocks set to "(gpuClkMin 3150, gpuClkMax 3150)" for GPU 00000000:0A:00.0
All done.
Memory clocks set to "(memClkMin 10501, memClkMax 10501)" for GPU 00000000:0A:00.0
All done.

  Attribute 'GPUPowerMizerMode' ([gpu:0]) assigned value 1.

KINETIC_GPU: UNLEASHED [600W | 3.1GHz]
 
Hmm... If you install one of the NVIDIA gui tools, like nvidia-settings, does that give you the option to disable the power saving mode?
 
Hmm... If you install one of the NVIDIA gui tools, like nvidia-settings, does that give you the option to disable the power saving mode?

yep. While nvidia-settings is basic on linux, it does that. Offering Normal/Performance modes. There is no eco mode outside of manual intervention to my knowledge.

1777051951439.png
 

Thanks! I haven't had any Nvidia products in ages, so I wasn't sure.

Though, as memory serves, this isn't really a new feature. I recall this being the case the last time I had one of their GPUs. But my memory could easily be wrong.
 
Thanks! I haven't had any Nvidia products in ages, so I wasn't sure.

Though, as memory serves, this isn't really a new feature. I recall this being the case the last time I had one of their GPUs. But my memory could easily be wrong.

Considering I have a custom alias for scrambling eggs off my GPU I really otta know more about NVIDIA than I do; admittedly lol. While I'm a bit of an NVIDIA fanboy, I'd be the first to tell you their GUI experience leaves quite a lot to be desired in contrast to that of Windows.

nvidia-settings GUI looks identical to that of windows but lacks seemingly 90% of it's functionality on Linux lol; it's a bit aggravating; but such is the NVIDIA way it would seem
 
nvidia-settings GUI looks identical to that of windows but lacks seemingly 90% of it's functionality on Linux

That was my experience the last time I used it. I'd hoped that it would have changed by now. I guess not.

It does, however, the bandwidth still drops when no load. So I'm not sure of the purpose of that option.

Well, that sucks. In my head, I'd like to imagine that option working.

I suppose there are some power savings going on, perhaps even some longevity added by keeping it cooler. Still, that seems like a setting that should work as I'm imagining.

if it doesn't take too long to 'spin up' to full power, it might not be too bad. If you hadn't run the tests and now know about it, I wonder if you'd have noticed it at all? (I have no clue how well it works. So, I defer to you.)
 
if it doesn't take too long to 'spin up' to full power, it might not be too bad. If you hadn't run the tests and now know about it, I wonder if you'd have noticed it at all? (I have no clue how well it works. So, I defer to you.)

That's actually why I created my aliases tbh. I wanted something that I could toggle for an immediate response. When I run gpu-beast it instantly ramps up the wattage, and vise verse when I toggle with gpu-chill it drops it down.

the gpu-beast mode toggle is undeniably excessive but it gets the job done. I've been using this GPU since 2022 and it's served me very well. Even today when running beast mode and putting to work say using Stable Diffusion for AI Image generation, or playing some intensive game like Crimson Desert; thermals never exceed 68 degrees Celsius.

Though when running dos2unix lspci commands, I realized my new motherboard isn't properly utilizing it's lane. I recently had my Prime-X570 Pro MB fail on me and I had to replace it with a B550-F board. I'll be diving into bios this evening to see if I can resolve the issue so I can stop bottlenecking my GPU.

I have to thank @dos2unix for this post. I'd likely not have noticed this otherwise, at least for a while. Not to mention I find your 5080 journey intriguing ^_^

EDIT: MB is the culprit for my issue, cheap motherboard with hardware limitations apparently incapable of utilizing my 4090 properly due to lane limitations.
 
Last edited:
nvidia-settings GUI looks identical to that of windows but lacks seemingly 90% of it's functionality on Linux lol; it's a bit aggravating; but such is the NVIDIA way it would seem
nvidia-settings also doesn't have Wayland support yet.
 
Ahhh... much better. 32GT/s, but that only happens when under a load high enough to put it out of power saver mode.
I have the 5080, so that's a feature that automatically kicks in when it's needed from my understanding? If so that's quite a cool feature, as I don't need to configure anything for it.
 


Follow Linux.org

Staff online

Members online


Top