Microsoft's Surface Pro 4 is a hit, but it's not without its issues. Battery life continues to be one of its struggles, as noted in our review of the device.
While some analysts have pointed out that the Surface Pro 4's 42 watt-hour battery should be enough, the issue seems to be related to the power management of Windows 10 combined with the Skylake CPU part within.
So what seems to be the trouble? Essentially, Windows 10 is having a difficult time knowing when to use (or more accurately, not use) Intel's Turbo Boost feature. Turbo Boost is a feature that allows CPUs to go beyond their rated frequency for short bursts in order to maximize performance.
Unfortunately, Windows 10 tends to think that Turbo Boost should be used often, even for routine things such as viewing this website, viewing a video or playing Minecraft.
The over-reliance on Turbo Boost results in three undesirable behaviors for Surface Pro owners.
First, Turbo Boost eats up a lot of battery. During Turbo Boost, the CPU will use up to 25W of power (compared to less than 5W normally). On a 42W-hour battery, that dramatically reduces battery life.
Second, the heat turns on the fan resulting in many Surface Pro 4 users experiencing fan-noise even when simply viewing a YouTube video or, again, viewing a website.
Third, for gamers, Turbo Boost causes power throttling. Power throttling is a feature in the CPU that ensures the longevity of the part. If Turbo Boost is being used too often, power throttling is engaged and the CPU frequency can drop to as low as 0.45GHz, causing a dramatic loss in game performance.
While many Surface Pro 4 expert-level users have been able to mitigate some of these effects using Intel's Extreme Tuning utility to adjust voltages and power use models, this stop-gap measure is not for the casual user and generally only delays the symptoms rather than eliminating them.
Presently, there is no cure. Microsoft must adjust the power management in Windows 10 to make more intelligent use of the Skylake's Turbo Boost feature. This is, as one Microsoft engineer recently posted, a "non-trivial" computer science problem.
There are, however, a handful of effective strategies we've employed that have drastically reduced the issues for most of our users.
Strategy #1: Disable Turbo Boost while on battery
I've written a very simple registry tweak that will bring back the maximum CPU frequency control in power settings. By setting the maximum CPU frequency, while on battery, to 99% Turbo Boost will not be engaged. The difference in performance (and benchmarks) is essentially unnoticeable. However, you will get approximately (in my experience) one more hour out of your Surface Pro 4 (Core m3/i5/i7) and you should no longer hear any fan sounds while on battery.
Strategy #2: Disable Flash
Flash is a battery hog. Disabling it in Edge, Chrome, or whatever your browser of choice is, will go a long way.
Strategy #3: Get H264ify
If you watch a lot of YouTube videos and use Chrome, make sure you use this extension. By default, YouTube uses a codec that doesn't get accelerated which causes additional CPU use.
Strategy #4: Disable WiFi while in sleep
By default, your Surface Pro 4 stays connected to WiFi while it's asleep. That can result in substantial battery use while your Surface is asleep. Turn this off by going to Settings->Power & Sleep->WiFI
- - -
I will be the first to say that you shouldn't have to employ these techniques. But for now, you can mitigate most of the issues of the Surface Pro 4's battery / heat / fan / power throttling by following these steps. There are additional, more advanced options (i.e. going into group policy tools to turn off things like Search indexing and countless other jobs while on battery) - but for most users, the above four items should do most of what you need until Microsoft provides a more permanent solution.
Maybe you also have tricks to save on battery life, let us know in the comments!