What's new

Some notes on power savings

Roozbeh

New Member
I was doing several tests recently to squeeze as much as possible from this device. I am really bad at writing tutorials and info but here we go again. My surface pro 3 is i5 and 4gb ram.


First, if you want to get convinced that you are actually saving battery you should find someway to measure it. Currently I am trying to test with Windows Assessment Tools but with no luck. But you can get AIDA64 which gives you good power consumption sensors. Also ThrottleStop gives you CPU power too. But some settings changes on other places which doesn't affect only CPU. Also perfmon has some power measuring tools too (which is instal`led by default) but I did not that much relied on them as they were updating really slow.

If I set my brightness to lowest with type cover connected (lights off) and after a while in idle I get discharge rate of -2.8, -3.0 W, so at this rate just looking at screen on I should get around 14hr.

- Install Intel drivers. They give you a nice control panel which gives you few more saving options. Go to POWER and enable "Refresh Rate Switching", "Panel Self Refresh", maybe "Extended battery life for gaming" and "Display Power Saving Technology" to maximum battery.

-I've unlocked all power settings in control panel. It doesn't do any harm and if you think you messed things up, just click on reset button and everything back to defaults. The way to do is go to registry and HKLM\System\CurrentControlSet\Control\Power\PowerSettings and for all GUID strings (Also for its children - only GUIDs) add a REG_DWORD with the name of "Attributes" and set it to 2. If there is one there already make sure you change it into 2. (Don't worry about this registry modification, it just makes them appear in control panel -> Power without that setting they are hidden. Doesn't change anything by itself.)

-Now you have all power options in Power settings from control panel.

- Before making changes you can create a new power plan such as "Energy Saving" or anything like this if you don't want to mess with your current "Balance"

- I also always create a one called "no standby" which doesn't let computer goes into standby. Good for situations like presentation or ....

- Few settings are not set to most power saving (they are either in balance or moderate power or maybe performance). Change them into maximum power savings or similar setting
. Wireless Adapter Settings -> Power Saving Mode
. Balanced -> Device Idle Policy
. Intel Graphics Settings -> Intel Graphics Power Plan
. USB settings -> USB 3 Link Power Management
. PCI express -> link state
. Multimedia settings -> when playing video

With all these settings and 40% brightness, Playing WALL-E movie (1080p ) using XBox Video program I am getting -4.8w of drain on average. With this rate if surface is if fully charged, it means I can get up to ~8.7hr of a 1080p movie.
If you want to be on the safe side Just do changes up to here and ignore the rest of this post. I've noticed these changed will give you around 0.3w-0.8w of savings which is still good enough. Probably around 30min-1hr of battery saving.

- If you are using VLC (desktop version) make sure hardware decoding is enabled.(Tools -> Preferences -> Input/Codec -> Hardware accelerated decoding -> DirectX ...... also maybe checking the checkbox of Accelerated video output in Video section of preferences, if not checked already.)
Also I've tested and it seems "output" selected as OpenGL does the best savings. (around 0.5w compared to to other options - Direct3D video, DirectDraw, GDI -.)

- Among Windows Media Player, VLC (desktop), VLC (MUI) and Xbox Video, the most power efficient one was Xbox Video.

- Strangely windows has disabled throttle states and also core parking. I've played around with them and it seems to me if PC is busy they do make some savings but in idle state the current settings are the best. But you can still make them on. From power settings (processor power management section) you can turn on Allow Throttle States and then you can set "Minimum processor state" to any percentage. I could make CPU go as low as 0.3GHz. Although it seems going low will help you save battery, it seems because it gets too slow & CPU utilization goes high so to do small tasks and it ends up actually using more power. But maybe 700mhz is better than current 750mhz(the lowest CPU goes without allow throttle states)?

- CPU parking is also disabled. I've noticed some savings enabling it but in short term whenever it gets enabled CPU power goes higher for a while then it gets low. So some case testing would help. As I noticed if enabled also while playing video you get lots of core parking. In order to enable it change processor power management->processor performance core parking min cores to 50%.

- I find out if you want to get comparable power consumption with these 2 settings on you should make you minimum cpu state as around 30% so you get at least 1GHz so if the other core is parked still avoiding too much cpu utilization by windows idle tasks.

- Display section of settings also have some properties that can be helpful in saving some power!

- "Presence Aware Power Behavior" ? what is it?!

- It is funny I didn't get any major difference going into Airplane Mode.

- "Idle Resiliency" and "Interrupt Steering" also sounds to be helpful in tuning. But haven't figured them out yet!

- It is highly unlikely that you hurt your computer changing these settings but YOU HAVE BEEN WARNED :D. Just make sure you check all scenarios before going on with it. Most notably if connected standby works and ... They(Microsoft) probably put some time to figure these settings out!

- For next few tips you have to Install ThrotleStop 7.0 . Click on previous link and from poster signature you can download version 7.0. (Version 6.0 also works but does not have all features required)

- Also some performance boost which you can get (with little impact on battery) is that CPU boost mode is enabled only for 4 seconds by default. It means you get 4seconds of 2600Mhz and then your cpu speed switch to ~2100MHz.
With ThrotleStop you can change this and make it longer so you take advantage of longer time with higher CPU speed. It is in TPL->Turbo Time Limit. I set mine to 64sec. And it doesn't even make any noticeable heat or battery drain! Because the difference between drainage of CPU at 2600mhz and 2100mhz is really negligible but difference in speed is worth it. BUT NOTE THAT,THIS SETTING REMAINS SET EVEN IF YOU REBOOT YOUR COMPUTER. so don't put something stupid there!Although it only make sense when you get that much into that state and probably thermal throttle override it. But anyhow this change can save a lots in some CPU intensive tasks!

- Another setting in ThrottleStop is CPU-GPU balance. It helps sometimes on games. TPL->Intel Power Balance. I set mine to CPU:1, GPU:31. Haven't measured power impact. But probably Null.

-Also you can lower CPU voltage to save some wattage in idle mode. TRL-> enable "Unlock Adjustable Voltage" and set offset voltage to -50mV. It is an offset and when required windows will still able to increase voltage. This saved me in idle mode around 0.3W.

- It takes like 4-5 minutes that CPU suddenly goes into better idle modes and you can see CPU wattages of -0.4w. I really dont know what controls this but whatever it is, it is worth finding. Because sometime you might make a change and then see a huge drop, but actually that drop is from something else and now cpu is mostly in very low idle states.

- Highest and lowest brightness settings make around 2.5w of difference. So in order to save some battery make sure you turn on adaptive brightness.

Hope it was helpful If you find out something new and related please post here!

It would be great that if you can measure your consumption before and after applying these tweaks! I did all my measurements with AIDA64. Also wait for some time so that CPU goes into lower states.
 
Last edited:
Interesting. Which version of AIDA64 did you use?
I assume most of this was done with AIDA64???
 
I am using AIDA64 Extreme (Trial). When expired, I have to think about something else. But so far it was good. Although I prefer a method that I can measure the average. With AIDA64 you have to keep looking at sensors and get the feeling of improvement.
 
AIDA64 is great - use it all the time for monitoring temperatures mostly, and when I overclock stuff (not Surface).
 
No. I think it is a default thing that comes with windows. Video. But you can search for it in Store and find wheter it is installed or not.
 
Back
Top