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

Surface Pro 2017 - Power Limit Throttling

victorypoint

New Member
Joined
Feb 14, 2021
Messages
3 (0.01/day)
In this Youtube video (Surface Pro 2017 - Power Limit Throttling Bypassed! - Breaking all the Benchmark Records! - YouTube), the author discusses how to bypass the the TDP long clamp using Turbo Boost Short Power Max and Turbo Boost Power Max setting in Intel XTU. I'm trying to do the same thing with latest stable TS but am having no luck. Here's what I've tried in TS:
  • Set TPL PL1 and PL2 to 35, removed clamps, and used lock option to make sure they do not change
  • Set TPL PP0-CL to 256
  • Set TPL TTL to 28 seconds
  • Turned on TPL 'Speed Shift' and set EPP to 0 in Main screen
  • Turned on FIVR - 'Disable and Lock Turbo Power Limits' option
  • Turned off clock mod, multiplier, turbo, bd prochot, c1e, and speedstep in Main screen
  • In Options, ensured PROCHOT Offset is set and locked to 0
  • Not using any FIVR turbo radio limits or TPL Speedshift max/min values
  • Not using any FIVR undervolts
  • Can't increase FIVR IccMax value to max in Performance profile because of Microsoft Plundervolt patch installed
TS reports no red limit flags but the Surface Pro runs consistently with no throttling (3.50 GHz) at acceptable temperature. PKG power doesn't exceed 25W using the stress test apps he uses, even with a fan blowing on the back of the chassis.

Is his bypass possible to replicate with TS?

-Al
 
Last edited:

unclewebb

ThrottleStop & RealTemp Author
Joined
Jun 1, 2008
Messages
4,577 (0.90/day)
@victorypoint - Post some screenshots that show exactly how you have ThrottleStop setup. I do not know if 3.50 GHz is a good speed or not because I do not know what CPU model you have.

TS reports no red limit flags
That sounds like a good thing. Post a screenshot that clearly shows the problem you are having. Run a stress test and show me the main ThrottleStop screen along with the Limit Reasons data.

If you have decided to turn off both SpeedStep and Speed Shift, ThrottleStop will not have control of your CPU.

Is his bypass possible to replicate with TS?
For most CPUs, ThrottleStop will give you just as much control of your CPU as Intel XTU does. ThrottleStop typically gives you more control. I think the Surface Pro uses a chassis temperature sensor that can throttle the CPU. I seem to remember that you needed to point a big fan at the Surface Pro to keep this sensor from triggering extreme throttling.
 
Last edited:

victorypoint

New Member
Joined
Feb 14, 2021
Messages
3 (0.01/day)
Thanks for you reply Kevin! Well, I should have done more testing before I posted. It turns out the author was using an i7 Surface Pro 2017 which can be cranked to 35W. I have an i5 which maxes out at 25W. I also tested with Intel XTU and found it does absolutely nothing special or extra that ThrottleStop doesn't already do, just as you stated.

Thanks for posting the new stable TS 9.3. Love the new interface tweaks and features. Quick question - 'PPL current limit' appears to be removed from the TPL screen. Is that intentional?

-Al
 

unclewebb

ThrottleStop & RealTemp Author
Joined
Jun 1, 2008
Messages
4,577 (0.90/day)
'PPL current limit' appears to be removed
I recently learned that ThrottleStop has been incorrectly labelling this for years. That is what happens when Intel goes out of their way to hide their full documentation from individual developers.

The PP0 Current Limit register is now called Power Limit 4 in the newer CPUs. A new and improved name for the exact same register. Setting this register to 0 seems to be best, whatever it is called. You can also set this register to a really big number like 1023 to help avoid any throttling.

1613681350188.png
 

victorypoint

New Member
Joined
Feb 14, 2021
Messages
3 (0.01/day)
Aha, okay thanks for explaining. So I discovered my SP2017 can max out at 26.4w, fan on chassis, no throttling, running various benches like Cinebench R23, etc.

So, without a fan, just sitting on my desk connected to Surface Dock and external monitor, BD PROCHOT disabled, PROCHOT 100, she hits 100C pretty fast and shuts down. Just wondering what you recommend to lower temperature for normal use without a fan (video rendering, gaming) in my case. Lower PROCHOT? Lower PL1 and PL2? Lower Turbo Ratio Limits? Lower Speed Shift Max? Turn off turbo boost? So many options!

-Al
 

unclewebb

ThrottleStop & RealTemp Author
Joined
Jun 1, 2008
Messages
4,577 (0.90/day)
Intel CPUs are not supposed to do a thermal shut down until they reach 125°C. Some laptops over ride this setting and set the shut down temperature to 100°C. If your laptop does that then you need to set PROCHOT Offset to 3 or 4 so your laptop does not prematurely shut down on itself.

Replacing the thermal paste is probably the best way to improve CPU cooling. If you do not want to do that then lower the turbo power limits or lower the Speed Shift Max value so your laptop puts out less heat.
 

fmfhonda5

New Member
Joined
May 14, 2022
Messages
1 (0.25/day)
My long reply disappeared somehow. That really sucked since I spent too much time typing it but I'll do it again, whatever.

I have an i5-7300U Surface Pro 2017 I rolled back to older UEFI firmware that allows undervolting and I'm able to do pretty much anything I want with it. The microcode reported in TS is B4. To roll back you need this Reddit thread:
web.archive.org/web/20220514222118/https://old.reddit.com/r/Surface/comments/no3rz4/how_to_fix_surfacepro4_type_cover_issue_battery

open regedit
  1. Navigate to Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FirmwareResources and back it up
  2. Delete all keys that is except for {137F5D0A-B53B-45B3-AA77-8E6671ACE16B} and {C57F56BE-D61E-454E-97DD-8259F1EC7860}
  3. Add REG_DWORD entry in each one with Policy as key and 1 as value
I've quoted the most important instructions. The OP uses a Surface Pro 4 so the instructions are not an exact match. You do not have to delete any keys (probably), you just need to go to FirmwareResources and set the Policy=1 DWORD in every key nested inside. I *think* you only need to set it for Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FirmwareResources\{A9C020DF-114D-420E-8890-A1436DF3199C} on the SP2017 but don't quote me.
1652569241829.png


The gist of the instructions: you go to device manager and uninstall + delete the drivers for everything listed under Firmware. You may also need to manually delete all the firmware files in C:\Windows\Firmware. You set the Policy=1 DWORD under all the relevant keys, this allows you to rollback. You install an older Microsoft firmware pack and reboot. If you are successful Windows will flash the older UEFI files and you'll be able to undervolt again.

Below is the firmware pack you need to find on Microsoft's website and the UEFI bin it installs. You can find the files here:
microsoft com/en-us/download/details.aspx?id=55484

Name: SurfacePro_Win10_17763_20.072.21326.0.msi
Size: 585203712 bytes (558 MB)
SHA256: EE305C8BE36BE92C0E9D301BC7C340C5E59BE7C07FFA16CF5BF5D56CD83F4C07

Name: SurfaceUEFI_235.3261.768.bin
Size: 4458731 bytes (4 MB)
SHA256: ED3B4E84EA42502E551E11824710F4BB8A53984961013DAF1F5FBA3F617B898C

If you see Windows update download firmware files you need to manually delete the newer UEFI bins it acquires so Windows does not flash a new UEFI on boot. Go to C:\Windows\Firmware and delete and SurfaceUEFI_xxx.bin file that is newer than SurfaceUEFI_235.3261.768.bin if they appear. You may also try to manually edit the firmware version info in the registry so it always thinks you are using the latest firmware. You can mix and match different firmware files with your older UEFI but this may cause serious problems down the road. Some combinations broke my camera and I had to restore a backup and I never touched that again.

I use these Throttlestop settings with my i5-7300U:
CPU Core -94.7 mV
CPU Cache -80.1 mV
System Agent -80.1 mV
Intel GPU -97.7 mV
iGPU Unslice -97.7 mV

Some of these values may or may not need to be coupled for the undervolt to work. In general the CPU cache is weaker at undervolting than the core. If you want to fix EDP throttling flashing for a few milliseconds increase iccMax to 43.50 A on CPU core.

You should use the balanced power profile. TS can enable High Performance mode but I've benchmarked it and it uses slightly more watts with slightly WORSE performance.

In general my laptop never throttles under normal use with this undervolt. But for running high loads or something unrealistic like Prime95 I use a profile that kneecaps the 2-core turbo speed to 3.0 GHz down from a max of 3.5 GHz. I'll explain why.

The weak point of the fanless i5-7300U SP2017 is the charging circuitry. If you are plugged in high wattage loads around 25W will cook the charging circuitry in 5-10 minutes and constantly cause the laptop to BD ProcHot throttle. I rarely run into this problem since I don't run loads like that often, but you can either kneecap the turbo clock speeds or kneecap the max wattage.

If you turn off BD ProcHot your laptop cooks itself until it spontaneously turns off. When you turn it back on it displays a thermometer warning and refuses to turn back on until the charging circuitry cools down enough.

To greatly exceed the 25W limit you hit TPL and increase PL1 and PL2 wattage from 25W to 35W. But as I mentioned before this will cook your charging circuitry if you are charging and is highly unproductive. You'll also run into other throttles like CPU prochot at 90C.

There is also a glitch to uncap the HD 620 GPU so it can use 25W and above for one computer session. Get the latest intel GPU drivers as as .zip. Go to device manager >display adapters > Intel(R) HD Graphics 620 > Update Driver > browse my computer for drivers > Let me pick > Have disk > select your extracted drivers. Install the drivers and reboot. Until you shut down or reboot your GPU can use unlimited watts, try it out in Furmark. With the GPU uncapped the framerate slightly increases and the GPU draws between 25-30W without any help from the CPU. This is just a fun novelty, not very useful since the wattage will cause BD ProcHot faster.

Here's my TS settings and a comparison of a TS Bench (above) and a Prime95 run (below). Not sure why my PL2 limit is set to 35 maybe I did that.
1652569974959.png


I was able to hit 28-30W and momentarily spike to 42.4W. I used the GPU uncap glitch, uncapped all the turbo limits, used High Performance and ran Prime95 and Furmark at the same time.

1652575428094.png
 
Last edited:
Top