45W performance from 15W Kaby Lake-R

Gee (https://n4ru.it)
5 min readMar 24, 2018

--

…or How I learned to stop worrying and love the X1 Carbon

Preface

It’s time for another deep dive into laptop CPU performance, and as usual the subject of my testing will be a ThinkPad — the X1 Carbon 6th Gen — with an 8650U processor. After a month of fiddling around, and loads of testing and tweaking, I’m more familiar with the quirks surrounding the glorious Kaby Lake-R line — the series of Quad Core ULV chips that ship with a TDP of 15W. In this article we’ll be going over what Kaby Lake-R laptop CPUs are — really well binned 45W Kaby Lake chips in an UltraBook package!

Turning the U into HQ

The goal here is to extract near full and constant quad core performance out of our Kaby Lake-R chips. For that, we’re going to need a couple of tools. While normally, you would need just ThrottleStop for this, for some reason Power Limit Long/Short settings simply don’t want to work on Kaby Lake-R despite being supported. Using Intel XTU, we’ll be able to set the Turbo Boost Power Short and Max settings, as well as undervolt the CPU.

Power Limits

The simplest way to disable power throttling is through Intel XTU. Going to the Core settings and upping the “Turbo Boost Power Max” and “Turbo Boost Short Power Max” to something higher than stock settings will result in significant performance increases. Despite settings in XTU, some actions such as plugging in the charger or changing Windows power settings will “reset” the power limit, so you need to reapply XTU settings when you notice this occurring.

Undervolting

Next up we have undervolting. The settings in the screenshot above are specifically for my X1 Carbon 6th Gen, so your results may vary. Undervolting reduces overall power consumption without affecting performance, which reduces heat and wattage. You definitely want to find a stable undervolt and utilize it to get the best performance from your TDP limit increases.

Configurable TDP

Lucky for Kaby Lake-R (or at least for ThinkPad users), the configurable TDP setting is easily accessible through ThrottleStop. Selecting the TPL menu will allow you to quickly change your TDP limits without XTU. The configurable TDP Down and Up power limits are set to 10 W and 25W respectively. One feature of configurable TDP is that it allows you to modify the base clock to one of two non-default values — for the 8650U, that default value is 1.9GHz.

If you want a big boost in battery life in exchange for non-boost clocks being lowered to 800MHz, enable TDP Level Control and change the value to 1. Likewise, setting the TDP Level to 2 will up the power limit to 25W and set the non-boost ratio to 2.1GHz, and 25W should sustain the full 3.9GHz boost on most medium loads. Enabling “Lock” will keep this setting until a reboot.

Stock Results

Stock results — throttling above 15W

I used PassMark’s PerformanceTest 9.0 for synthetic benchmarks. Stock benchmarks from the X1 Carbon are awful. Without changing any of the settings, we get well below the average rating, which is to be expected given the Carbon’s incredibly aggressive stock throttling. Running multiple tests gave scores that varied wildly, with one as low as 7751, nearly 16% below the average, with the upper end being 8544.

When unlocking the ridiculous 15W stock TDP limit, you get amazing results. I previously benchmarked using CPU-Z as well, and the results favor the 8650U against the 7700HQ across the board, surpassing even the 7820HQ in multithreading tests but averaging somewhere in between across the two benchmarks. The takeaway here is that these are really HQ chips that are aggressively throttled, but thankfully that throttling is user controllable.

Automating TDP Limits

Lucky for us, Intel XTU has a command line client that will allow us to automatically set these limits on boot. First, you have to enable script execution. All this requires is a one-liner to be run in the power shell console:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Once that’s done, save the following code as a power shell script, and set it to run on boot, wake, etc. Change the italicized numbers to your desired values. If you have a different installation path for Intel XTU, change $xtu_path.

$xtu_path = 'C:\Program Files (x86)\Intel\Intel(R) Extreme Tuning Utility\Client\XTUCli.exe'
$status = get-service -name "XTU3SERVICE" | Select-Object {$_.status} | format-wide
if ($status -ne "Running") { start-service -name "XTU3SERVICE"}
# Undervolt Settings in mV
& $xtu_path -t -id 34 -v -120
# Long Boost Settings in Watts
& $xtu_path -t -id 48 -v 15
# Short Boost Settings in Watts
& $xtu_path -t -id 47 -v 25
# Boost Time Settings in seconds (max 96)
& $xtu_path -t -id 66 -v 96
stop-process -id $PID -force

With Intel XTU you don’t need ThrottleStop unless you want to lock your clocks above the base. With ThrottleStop you can set your clocks to always turbo (3.9GHz all cores) and set your cTDP to 25W. With this configuration you can get full performance out of your Kaby Lake-R chips, despite most laptop manufacturers (or at least Lenovo) aggressively power throttling by default. One thing to note is that you need to enable XTU settings before opening ThrottleStop, otherwise XTU will fail to apply settings for some reason (it asks you to reboot, but settings won’t take affect if ThrottleStop is ever the first to start and enable its own settings.)

Enjoy!

--

--