• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

CPU capped to 3/4 of full speed for no apparent reason on Lenovo Legion laptops

WLF

Joined
Jun 18, 2023
Messages
38 (0.10/day)
I had this issue for several months but am getting so annoyed with it that I decided to post here to see if @unclewebb can help. On Legion laptops, when the GPU mode is changed (or another trigger that I can't put my finger on), the CPU becomes capped to 3/4 of its full speed. On my previous laptop with an i7-13700HX, it was capped at 3.67 Ghz, and now on my new laptop with an i9-13900HX, it's capped at 3.87 Ghz. Nothing I do other than putting the laptop to sleep or restarting can fix this, but it will randomly come back. There is nothing on the Limits page corresponding to this (after clearing it and while running TSBench, only a yellow GPU sign shows up). It has nothing to do with power limits and seems to just be some sort of throttling that Lenovo implemented, but Limits doesn't recognize anything is happening (EDP other is also not highlighted). Turbo Ratio Limits is also at 5.4 Ghz across the eight cores.

Has anyone seen an issue like this before, or is there anything I can do to fix this? I'll attach any logs or pictures you need. Surely Throttlestop can override this throttling since it isn't going through EDP Other.
 

unclewebb

ThrottleStop & RealTemp Author
Joined
Jun 1, 2008
Messages
7,489 (1.28/day)
Post screenshots including the FIVR and TPL windows when throttling is in progress. Attach a log file too.

Surely ThrottleStop can override this throttling
ThrottleStop has not been updated for any of the new throttling schemes that manufacturers have recently dreamed up. Too bad the millions of people that have used ThrottleStop every day for the last 15 years never thought about financially supporting it.
 

WLF

Joined
Jun 18, 2023
Messages
38 (0.10/day)
I would financially support Throttlestop if I knew how to. Here are the FIVR and TPL windows:
fivr.png
tpl.png

Also here's a 40 second video of the throttling and me opening all the windows:

I also discovered that every other restart, the throttling doesn't occur and I can reach the full 5.4 Ghz. This strangely correlates with my previous Legion 5i, where it wouldn't boot every other restart and just sat on the Legion logo screen until I held the power button to force it off.
So I do have a permanent workaround, but there should still be a way to force the CPU to run at its full speed. I almost wonder if Windows is doing this throttling since I know it can throttle to very specific frequencies (maximum processor state) and this doesn't show up in Throttlestop as a limit reason. But I have maximum processor state on both battery and plugged in set to 100%.
 

Attachments

  • 2024-05-23.txt
    720 bytes · Views: 13

unclewebb

ThrottleStop & RealTemp Author
Joined
Jun 1, 2008
Messages
7,489 (1.28/day)
Check the Speed Shift box in the TPL window and see if that makes a difference.

When logging data, exit ThrottleStop when you are done testing so it can finalize the log file. Put a load on the CPU when logging data.
 

WLF

Joined
Jun 18, 2023
Messages
38 (0.10/day)
Actually ignore that last part about the restarting, it took me 10 reboots to get back to 5.4 ghz. I'm doing a lot of testing with this currently so I may figure out something.

Check the Speed Shift box in the TPL window and see if that makes a difference.
It does not make any difference and actually significantly decreases multicore performance weirdly enough.
 

unclewebb

ThrottleStop & RealTemp Author
Joined
Jun 1, 2008
Messages
7,489 (1.28/day)
there is no recommended max value
Max 108 means 108 is the maximum recommended value. You can set the Max to 255 if you like. Too high is better than too low.

There is another active forum thread about a similar problem. Hopefully the fix works for one of you.

 
  • Like
Reactions: WLF

WLF

Joined
Jun 18, 2023
Messages
38 (0.10/day)
Max 108 means 108 is the maximum recommended value. You can set the Max to 255 if you like. Too high is better than too low.

There is another active forum thread about a similar problem. Hopefully the fix works for one of you.

I haven't tried Speedshift yet but I found another fix which is to disable Intel Processor and Power Management in the Registry (by setting the start value to 4). This breaks task manager and Legion Toolkit's frequency display, but it has stopped this weird frequency throttling. I also have a feeling it will result in terrible battery life, but I can always re-enable it if I need.

Also, how to I donate to Throttlestop? Your software has solved so many of my problems in the past and will continue to be the first thing I download for any Intel PC I may get in the future. You're honestly the unsung hero of so many people. I would be happy to give back in some way but it seems you removed the donate button. :)
 

unclewebb

ThrottleStop & RealTemp Author
Joined
Jun 1, 2008
Messages
7,489 (1.28/day)
how to I donate to ThrottleStop
Donations are closed but I do appreciate the offer. I always suggest that ThrottleStop users should go help someone in their local community. I am well fed and I sleep well at night. Many people are not so lucky.

This breaks task manager and Legion Toolkit's frequency display
I thought setting the Start value to 4 in the registry screwed up Intel Turbo Boost. What do ThrottleStop and CPU-Z report for CPU speed when you do this? I think the link I posted is a better way to fix the maximum frequency problem.
 

WLF

Joined
Jun 18, 2023
Messages
38 (0.10/day)
Donations are closed but I do appreciate the offer. I always suggest that ThrottleStop users should go help someone in their local community. I am well fed and I sleep well at night. Many people are not so lucky.


I thought setting the Start value to 4 in the registry screwed up Intel Turbo Boost. What do ThrottleStop and CPU-Z report for CPU speed when you do this? I think the link I posted is a better way to fix the maximum frequency problem.
Let me look at that and get back to you. The idle power draw is like 20-30 W so it definitely is not optimal. And since a registry tweak fixed the throttling, it's obviously not done by the BIOS and can be fixed in runtime.
But all tools other than Legion Toolkit and task manager report up to 5.4 Ghz if I stress the individual cores, and the performance in CPU limited games aligns with that.

Donations are closed but I do appreciate the offer. I always suggest that ThrottleStop users should go help someone in their local community. I am well fed and I sleep well at night. Many people are not so lucky.


I thought setting the Start value to 4 in the registry screwed up Intel Turbo Boost. What do ThrottleStop and CPU-Z report for CPU speed when you do this? I think the link I posted is a better way to fix the maximum frequency problem.
Hi @unclewebb, I tried everything in the other thread and nothing worked for me. I've attached my power.txt file so maybe you could take a look at that?

Also, I've found that when I start my laptop in Hybrid-iGPU mode (meaning the discrete GPU is disabled), the throttling doesn't occur. However, as soon as I enable it or start in Hybrid mode, the throttling starts. I'm not sure what program would be checking to see whether the dGPU is enabled and throttling the CPU if so (although I know it isn't Legion Toolkit because I tested that).
 

Attachments

  • power.txt
    69.9 KB · Views: 14
Last edited:

unclewebb

ThrottleStop & RealTemp Author
Joined
Jun 1, 2008
Messages
7,489 (1.28/day)
I was interested in seeing what the Maximum processor frequency was set to. In your case this is set to 0 which should tell Windows to ignore this setting. So far I have not found any other settings in the power plan that might be responsible for throttling.

Code:
    Power Setting GUID: 75b0ae3f-bce0-45a7-8c89-c9611c25e100  (Maximum processor frequency)
      GUID Alias: PROCFREQMAX
      Minimum Possible Setting: 0x00000000
      Maximum Possible Setting: 0xffffffff
      Possible Settings increment: 0x00000001
      Possible Settings units: MHz
    Current AC Power Setting Index: 0x00000000
    Current DC Power Setting Index: 0x00000000

Try looking in the Nvidia GPU driver settings. Perhaps when the Nvidia GPU becomes active, it causes the CPU to throttle so there is more power available for the Nvidia GPU. Lenovo has crafted a variety of throttling schemes going back more than a decade to accomplish this goal. It was easy to disable the throttling that my 4th Gen Lenovo Y510P does. New stuff, not so easy. This power sharing scheme might be managed by an embedded controller now. Look for some sort of energy efficiency setting within the Nvidia driver. It was possibly a BIOS update that changed this.

Unfortunately I don't have enough hands on experience trying to solve Lenovo's latest throttling schemes.
 
  • Like
Reactions: WLF

WLF

Joined
Jun 18, 2023
Messages
38 (0.10/day)
I was interested in seeing what the Maximum processor frequency was set to. In your case this is set to 0 which should tell Windows to ignore this setting. So far I have not found any other settings in the power plan that might be responsible for throttling.

Code:
    Power Setting GUID: 75b0ae3f-bce0-45a7-8c89-c9611c25e100  (Maximum processor frequency)
      GUID Alias: PROCFREQMAX
      Minimum Possible Setting: 0x00000000
      Maximum Possible Setting: 0xffffffff
      Possible Settings increment: 0x00000001
      Possible Settings units: MHz
    Current AC Power Setting Index: 0x00000000
    Current DC Power Setting Index: 0x00000000

Try looking in the Nvidia GPU driver settings. Perhaps when the Nvidia GPU becomes active, it causes the CPU to throttle so there is more power available for the Nvidia GPU. Lenovo has crafted a variety of throttling schemes going back more than a decade to accomplish this goal. It was easy to disable the throttling that my 4th Gen Lenovo Y510P does. New stuff, not so easy. This power sharing scheme might be managed by an embedded controller now. Look for some sort of energy efficiency setting within the Nvidia driver. It was possibly a BIOS update that changed this.

Unfortunately I don't have enough hands on experience trying to solve Lenovo's latest throttling schemes.
Thanks, I appreciate your patience with me! I have a feeling it has to do with Speedshift EPP, as you can see from my screenshot that even with the box unchecked there and in the TPL window, the BIOS still enables it (there is no option in the BIOS to disable it). But with Intel PPM start set to 4, the green SST no longer appears, and no CPU throttling occurs. At least it's nowhere near as bad as my previous TUF laptop, which throttled the CPU to 25 W to prevent the battery from draining (often going down to 2.4 Ghz).

And despite the extremely high idle power draw, Cinebench R23 scores at even 70 W are identical with and without PPM on, so I can always just re-enable Intel PPM if I need battery life. I'm also running an older BIOS version because believe it or not, Lenovo disabled undervolting in the latest BIOS update. So I likely won't be buying any more Legions in the future because I won't be able to undervolt them.

One more question @unclewebb - what is the difference between Speedshift EPP on the front page and Speedshift in the TPL window? I might do a little more testing with this so this would be helpful information.
 

WLF

Joined
Jun 18, 2023
Messages
38 (0.10/day)
Just wanted to post a quick update here. I did find a way to consistently get the full 5.4 Ghz while also having Speedstep enabled. You have to put the laptop in the GPU mode you want - for example Nvidia GPU Only for me - then shut down. Then turn it back on and the CPU will not be capped. Restarting (which apparently is different from shutting down and turning back on), changing GPU mode, or sleeping from here will result in the CPU going back to 3.9 Ghz, but as long as you don't do any of those things it stays uncapped.
 
Top