# Surface Pro 2017 - Power Limit Throttling



## victorypoint (Feb 14, 2021)

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


----------



## unclewebb (Feb 15, 2021)

@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.



victorypoint said:


> 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.



victorypoint said:


> 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.


----------



## victorypoint (Feb 18, 2021)

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 (Feb 18, 2021)

victorypoint said:


> '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.


----------



## victorypoint (Feb 18, 2021)

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 (Feb 18, 2021)

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 (May 15, 2022)

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
> 
> Navigate to Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FirmwareResources and back it up
> Delete all keys that is except for {137F5D0A-B53B-45B3-AA77-8E6671ACE16B} and {C57F56BE-D61E-454E-97DD-8259F1EC7860}
> 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.




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.




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.


----------



## Cescopepsi90 (Sep 30, 2022)

In my case I couldn't rollback, the firmware flashes correctly but from device manager I get Error 10 (This device cannot start) under UEFI firmware. Is it because I tried to rollback from latest firmware (08/22)? Hope you can help me, it's really a shame I cannot undervolt my Surface Pro 5 anymore. Thank you in advance.


----------



## tonyhouse (Nov 9, 2022)

same situation here
last firmware has been installed (SurfacePro_Win10_19041_22.074.40280.0.msi)
and rollback to SurfacePro_Win10_17763_20.072.21326.0.msi is blocked
is there any workaround to make it work?

the guide is ok but when You try to install SurfacePro_Win10_17763_20.072.21326.0.msi it doesn't flash the firmware at reboot....


----------

