Slashdot Mirror


Why Does Windows Have Terrible Battery Life?

An anonymous reader writes "Jeff Atwood at Coding Horror is trying to figure out why the battery life for devices running Windows is so much worse than similar (or identical) devices running other operating systems. For example, the Surface Pro 2 made great strides over the original Surface Pro, increasing web-browsing battery life by 42%, but it still lags far behind Android and iOS tablets. The deficit doesn't get any better when Windows is run on Apple hardware. Atwood says, 'Microsoft positions Windows 8 as an operating system that's great for tablets, which are designed for casual web browsing and light app use – but how can that possibly be true when Windows idle power management is so much worse than the competition's desktop operating system in OS X – much less their tablet and phone operating system, iOS?' Anand Lal Shimpi is perplexed, too. Atwood is now reaching out to the community for answers: 'None of the PC vendors he spoke to could justify it, or produce a Windows box that managed similar battery life to OS X. And that battery life gap is worse today – even when using Microsoft's own hardware, designed in Microsoft's labs, running Microsoft's latest operating system released this week. Microsoft can no longer hand wave this vast difference away based on vague references to "poorly optimized third party drivers." ... I just wish somebody could explain to me and Anand why Windows is so awful at managing idle power.'"

39 of 558 comments (clear)

  1. Easy one... by unique_parrot · · Score: 5, Insightful

    ...because it's old and bloated!

    1. Re:Easy one... by Wonko+the+Sane · · Score: 5, Funny

      Opening up a covert connection to Fort Meade and transmitting all the user's actions via that channel takes a lot of extra power.

    2. Re:Easy one... by Dixie_Flatline · · Score: 5, Insightful

      That's a deliberately obtuse answer and you know it. OBVIOUSLY it's doing things in the background. You'd think with 10 years of people beating on it from every angle, someone would've figured out what all these magic things are. What are users getting for all this background processing?

      And if our ability to understand what's going on in the background is so poor, how can we ever trust the OS to do what we want it to? (I know the answer for a lot of folks out there is, "we can't".) It's possible to get process listings and logs, and apparently none of these explain it. But maybe someone out there that used to work for Microsoft can answer the question--you think we'd have better luck actually asking Microsoft themselves what the answer is?

    3. Re:Easy one... by cayenne8 · · Score: 4, Insightful

      OK, Jeff and Anand, listen up: it's because Windows is doing things in the background.

      So, linux and OSX aren't doing anything in the background too?

      --
      Light travels faster than sound. This is why some people appear bright until you hear them speak.........
    4. Re:Easy one... by sjames · · Score: 5, Insightful

      Alas, you have managed to correctly but uselessly answer the question (in classic MS fashion). Apparently the other OSes get by without all that idle activity, so why not windows. Is it incapable of it or is MS just unwilling?

      The question was 'why is Windows so awful at managing power", not 'in what way does Windows squander power'.

    5. Re:Easy one... by AlphaWolf_HK · · Score: 4, Informative

      I don't think age has much to do with it. Linux is older than Windows. Remember the current incarnation of Windows is derived from NT, a completely separate set of code from regular Windows originally released in 1993, with Linux originally being released in 1991. Linux wasn't even intended to be a production OS either, it was originally written as a i386 learning experiment.

      Yet Android, which runs on Linux, manages to do much better in battery life.

      --
      Careful with names containing L slashdot.org/~AiphaWolf_HK slashdot.org/~AlphaWoif_HK slashdot.org/~AiphaWoif_HK
    6. Re:Easy one... by teg · · Score: 4, Informative

      It really is a simple question.

      I just wish somebody could explain to me and Anand why Windows is so awful at managing idle power.

      OK, Jeff and Anand, listen up: it's because Windows is doing things in the background.

      What is it doing? Ask the engineers that built it. But there's no reason to ask stupid vague questions like that when the general answer is so obvious. Windows does a lot of things in the background, all the time. It sounds like that carried over to the mobile version. If you want to know exactly what it's doing in the background (for academic purposes, I assume, since that knowledge isn't very useful) then feel free to ask the people who designed and wrote the software instead of the general public.

      The benchmark used by the Anand and Jeff is OS X, which is doing a lot better batterywise than Windows 8. Neither of these are mobile, and both of these have a lot of background processes.

    7. Re:Easy one... by Anonymous Coward · · Score: 5, Funny

      Yes, but they're doing *neat* things that we like them to be doing.

      Windows is just doing ... "things" ....

    8. Re:Easy one... by Savage-Rabbit · · Score: 4, Informative

      OK, Jeff and Anand, listen up: it's because Windows is doing things in the background.

      So, linux and OSX aren't doing anything in the background too?

      Sure they do things in the background, they just do it more efficiently than Windows.

      --
      Only to idiots, are orders laws.
      -- Henning von Tresckow
    9. Re:Easy one... by Lendrick · · Score: 4, Interesting

      Slashdot is a fairly technical audience. Some of the people here may actually know the answer to that question, so it's valid to ask it. You're also likely to get a better answer than you would from Microsoft, which is always some marketing-vetted non-answer bullshit.

    10. Re:Easy one... by AmiMoJo · · Score: 4, Insightful

      It's because Windows isn't as good at doing things in the background. Unfortunately it isn't easy to explain, but the gist of it is that other systems wake up, run all the tasks that need to run and then go back to sleep. Windows just wakes up as and when it needs to, so there is more time wasted switching in and out of sleep and overall more time in the active state.

      I do this stuff for a living, it's fun stuff.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    11. Re:Easy one... by Anonymous Coward · · Score: 5, Insightful

      Did you read the article... of course not. They didn't just compared it to Android and IOS, they also compared the desktop/laptop versions, i.e. to OSX, which does not run on ARM.

    12. Re:Easy one... by Meneth · · Score: 4, Funny

      Every program that is created must have a purpose. If it does not, it is deleted... except for the exiles. ;)

    13. Re:Easy one... by ColdWetDog · · Score: 5, Funny

      You do what for a living? Wake up and go back to sleep?

      Sounds like fun to me.

      --
      Faster! Faster! Faster would be better!
    14. Re:Easy one... by Gilmoure · · Score: 5, Funny

      Just look at the source code, comment out what you don't like and compile.

      --
      I drank what? -- Socrates
    15. Re:Easy one... by Aighearach · · Score: 4, Interesting

      I tried to do the experiment, so to get ready, I turned off all the background services that I didn't want running... and already almost no applications worked. So the real why is that MS doesn't write encapsulated code; rolls everything into the kernel; and so nearly everything is "required," even the stuff the user doesn't want to use and whose outputs will never be displayed to the user in any form. In most cases the app the user is trying to use isn't even asking for that background data, it is just that nothing is encapsulated.

    16. Re:Easy one... by Anonymous Coward · · Score: 4, Informative

      (1) For the same reason that IBM inserted a 3-second delay in their mainframe's response to user input. Make it instant and people will complain the moment it is not. Make it a 3+ second delay and people get used to waiting.

      Been working on IBM mainframes for 30 years and I've never heard of this. Sounds like BS to me. We mostly get (and have got for all of those 30 years) sub-second end-to-end response for 95%+ of production CICS transactions, unless the entire LPAR is running short of cpu capacity.

    17. Re:Easy one... by pspahn · · Score: 4, Interesting

      Imagine your the head of a major energy corporation and at a dinner party one night, you get to chatting with some software engineer who works on things that are used on computers all over the world.

      It seems feasible that sooner or later you might talk about algorithm efficiency, and the guy ends up saying something like "yeah, I suppose if I did *that* instead, it would probably use more power."

      So the energy company dude pays some engineer handsomly to toss is a little extra waste. That ineffcient algorithm is now silently generating $5million/year in *free* revenue.

      --
      Someone flopped a steamer in the gene pool.
    18. Re:Easy one... by angel'o'sphere · · Score: 4, Insightful

      The Windows OS is built to work with a very wide variety of hardware configurations. Just because the Surface devices come in one hardware profile doesn't mean Microsoft spent years fine-tuning the OS to take advantage of that hardware exclusively. Which is exactly what Apple does with OS X.
      Sorry that is just complete bullshit. If you had read the article or at least the summary that would be clear to you.
      Hardware has nothing to do with the fact that Windows is doing all the time some nonsense in the background. There where times on 4GHz notebooks where you could not watch a simple DVD because it would hang every 30 seconds for half a second. What the fuck has that to do with "windows has to cover multiple hardware combinations"?
      The problem with windows is not only windows alone but also stupid virus scanners, hard drive encryption, search index update stuff etc.
      Note: hardware interacts with the system very simple, there is no reason that a wide variety of hardware in any way slows down the "kernel"! Your opinion only shows you have no clue about programming or software or hardware or operation systems or all of that.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    19. Re:Easy one... by tibman · · Score: 4, Insightful

      The Windows OS is built to work with a very wide variety of hardware configurations.
      Have you seen the list of hardware linux can run on? Windows ships with drivers, yes, but it depends on hardware manufacturers to ship their own drivers a lot of the time.

      --
      http://soylentnews.org/~tibman
  2. Power management is HARD. by jcr · · Score: 5, Interesting

    Watch the WWDC sessions on power management in iOS and Mac OS X. You'll get an idea of how much work Apple put into this over the last decade or so.

    -jcr

    --
    The only title of honor that a tyrant can grant is "Enemy of the State."
    1. Re:Power management is HARD. by Minwee · · Score: 4, Funny

      Math is hard.

      Let's go shopping!

  3. Found yer problem by jeffmeden · · Score: 5, Funny

    Ah ha: "I just wish somebody could explain to me and Anand why Windows is so awful at managing idle power."

    You make the mistake of thinking that just because the device isn't doing something at the user's direction, that it is idle. How do you think the NSA is getting all of their number crunching done while they shake the bugs out of their Utah data center?

    1. Re:Found yer problem by jeffmeden · · Score: 4, Insightful

      Well Windows Phone 7 seems to be great when it comes to power management.

      Android is awful. (Suppose WP8 will be as bad as the rest).

      You're right, my WP7 phone (a Lumia 900) lasts way longer than my Galaxy S3... Never mind that WP7 can't run any apps in the history of ever (most notably it cant run a microsoft account-capable version of Skype, a microsoft product) but hey the battery will be there when I NEED it...

    2. Re:Found yer problem by teg · · Score: 4, Funny

      Well Windows Phone 7 seems to be great when it comes to power management.

      Android is awful. (Suppose WP8 will be as bad as the rest).

      You're right, my WP7 phone (a Lumia 900) lasts way longer than my Galaxy S3... Never mind that WP7 can't run any apps in the history of ever (most notably it cant run a microsoft account-capable version of Skype, a microsoft product) but hey the battery will be there when I NEED it...

      Windows Phone has optimized the battery lifetime by analyzing typical usage patterns - by far the most power on iPhones and android phone is spent on running apps. By realizing this, and making sure that Windows Phone have on few, and rather bad, apps, battery lifetime on the phone goes sky high.

  4. Re: Historically inefficient OS is Inefficient by Simon+Brooke · · Score: 4, Insightful

    Not in my experience. Over the past twenty years I've run Linux on a large number of designed-for-Windows laptops; I've never seen worse battery performance under Linux than under Windows, and on some machine (including my current Asus Zenbook) considerably better.

    --
    I'm old enough to remember when discussions on Slashdot were well informed.
  5. Questions by SJHillman · · Score: 4, Interesting

    A few questions that would be interesting to know the answers to:

    - Is the power consumption deficiency the same across all hardware or does it close the gap on certain pieces of hardware?
    - Is the consumption deficiency gap the same on tablets vs laptops vs PCs?
    - How much can Windows 8 be tweaked to save battery life (IE: disabled unneeded services)?
    - Does it manage power of certain pieces of hardware better than others (SSD vs HDD, AMD vs Intel)?
    - Do drivers make a difference in power consumption?
    - How many hamsters have heart attacks every time Windows 8 is benchmarked?

  6. The (linked) Aandtech article on battery life... by Sir_Sri · · Score: 4, Insightful

    The (linked) Aandtech article on battery life pretty much answers its own question.

    Surface pro and surface pro 2 completely destroy everything else in the benchmark ratings. It means haswell doesn't manage lower power scenarios nearly as well as ARM, but Intel never has.

    For a comparison to iOS they'd need to well, actually have on on their chart. I can certainly see the argument that Windows is worse at power management than other OS's on the same hardware - but without hard numbers in a chart that's a tough case to make, since you're comparing different review sites to each other. Comparing different hardware is missing out on a lot - for most computing needs they're benchmarking Haswell is massive overkill - which might just be it, it literally cannot slow itself down enough (with either MS or intel drivers being the culprit) to save even more power.

    Or windows is doing background stuff that other OS's aren't. Whether those provide any value to justify reduced battery life or not is debatable, but the answer seems to be 'probably not'.

    It still isn't 'microsofts hardware', it's hardware from some 3rd party vendor they soldered together in a case and put their own sticker on it. Yes, it's up to MS to try and ride the cases of Intel and whomever is supplying their displays and SSD's to find ways to save power, but it's ultimately up to the 3rd party guys (who also sell parts to the rest of us) to actually make the drivers for their hardware.

  7. It's that damn "idle" process! by sootman · · Score: 5, Funny

    Chewing up all your CPU.

    (Yes, this post is a joke. It's an (in)famous old article from everyone's favorite tech writer -- who was, in fact, being serious.)

    --
    Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
  8. Re:Reduce by realityimpaired · · Score: 5, Insightful

    The author is a massive troll for comparing Surface Pro hardware (which runs a full blown i5 processor) with iOS and Android hardware (which is typically far lower power both in terms of wattage and processing).

    He's also comparing it against a MacBook, which can have exactly the same i5 processor. See the part in TFS about how running Windows on Apple Hardware doesn't actually change the deficit?

    Pretty sure Windows generally gets (sometimes substantially) better battery life than Linux.

    Depends on what you're doing. My laptop gets better life on Linux than it ever did in Windows, but all I do with it is surf the web. It doesn't require a lot of processing power, and Windows wastes a lot of clock cycles running stuff it doesn't need to accomplish the task.

  9. Stupid troll submission by cbhacking · · Score: 5, Informative

    Only on Apple hardware, which requires Apple drivers for power management, and surprise surprise, Apple sucks at Windows drivers (and always has). In one particular, the Windows power management drivers for my friend's MBP don't suppose variable fan speed control. It always runs full speed. No shit, that's going to waste battery life... On the flip side of the coin, though, Hackintoshes get worse battery life than Windows on the same hardware. This entire "article" is stupid; anybody who isn't blinded by fanboyism and has used the systems in question could tell you that.

    Surface Pro [2] has worse battery life than an iPad or Android tablet for a simple and bloody obvious reason: Core i5 CPU. Not some power-sipping little ARM chip with passive cooling, but full laptop-grade 64-bit processor. Even completely leaving aside the obvious (to anybody who is not an idiot, which apparently excludes the submitter) differences between a desktop OS (Win8.x) and a mobile one (Android or iOS), there are very obvious reasons for the battery life difference.

    --
    There's no place I could be, since I've found Serenity...
  10. Re:The (linked) Aandtech article on battery life.. by Guspaz · · Score: 5, Informative

    Errm, what article are you reading? Because the one I see shows the Haswell-powered 13" MBA getting ~14 hours of battery life to the Surface Pro 2's ~7 hours of battery life. Sure, the 13" MBA has a bigger battery, but the 11" MBA has a smaller battery and still gets ~11 hours.

    Your arguments about the Surface Pro 2 not really being microsoft hardware are not really meaningful, you could say the same about Apple's notebooks. They don't make the CPU, or the GPU, or the SSD controller, or the screen, or the display controller, etc.

  11. What an absurd headline by ericloewe · · Score: 4, Interesting

    Comparing a Surface Pro to an iPad is about as useful as comparing a bus to a small car. Of course the small car uses less fuel, but I'd like to see a bus full of people crammed into said car.

    The iPad and the tablets that it inspired are the new netbooks: barely useful for anything beyond simple tasks.
    The Surface Pro and similar tablets are ultabooks stuffed into tablets - this has advantages and disadvantages.

    As for OS X, that is indeed somewhat misterious, but it probably boils down to:

    - Driver optimizations: having a very limited set of hardware that needs to be supported makes it much easier to optimize drivers (and if needed the OS itself).

    - Bloatware: my Ativ Smart PC Pro came with at least three Samsung applications that constantly run in the background and (way too often) interact with the user. Control panel thingies for this and that driver don't help, either. Some of those probably misbehave and screw up the scheduler enough to measurably reduce idle time. These are not present on OS X.

    - UI: I'm not sure just how much hardware acceleration OS X uses, but Windows Vista/7 with Aero and Windows 8 at all times have hardware accelerated graphics for their UIs - eye candy in exchange for power consumption.

    - Unusually low-power hardware: I can imagine Apple applying pressure for individual components' power consumption to be lowered - the screen comes to mind as a likely culprit.

  12. expanding... by swschrad · · Score: 5, Informative

    (1) there is so much cruft under the surface in Windows (fake DOS calls, umpteen levels of virtualism, etc) that the machine expends a ton of cycles doing what is NOP in newer systems not supporting 1980 calls.

    (2) optimization isn't pretty and doesn't sell, so Microsoft is not cleaning house.

    --
    if this is supposed to be a new economy, how come they still want my old fashioned money?
  13. The things windows does, as a real OS by holophrastic · · Score: 4, Interesting

    Defragging a potentially huge disk, in the background, on-the-fly, so the disk never slows down.
    File search index, in the background, on-the-fly, so you can search faster. You can turn this off.
    Full window dragging, and many other graphics enhancements. You can turn these off.
    Is the printer still there? Let's check again.
    Port polling, did you know that a USB port might gett polled 50'000 times per second? You can turn this down. A lot.
    Scheduled tasks. Oh so many scheduled tasks. You probably have over 1'000 defined.
    Is the internet still connected? Let's check again.
    An actual software Firewall. You can turn it off, or make it much simpler.
    Multi-user, multi-profile. Everything gets doubled.
    Is the printer still there? Let's check again.
    Is the internet still connected? Let's check again.
    Event logging. Windows knows what it's doing, because it takes the time to write it down.
    The windows registry. It's probably the single most reliable aspect of any operating system. It's incredibly fast, always-on, used tens of thousands of times in a single moment by a any application -- my graphics suite writes 12'000 registry entries when I close the application. And you never need to worry about it getting corrupted.
    No fewer than eight different scripting languages available at any moment.
    Twenty versions of a single DLL loaded concurrently, for cross-decade application compatibility.

    It's not just an operating system. It's a generic operating system that can run anything from decades ago. My 1985 application still runs on my vista machine, which is still running smoothly 7 years after I built it, and now it's running software 7 years newer than it is. iOS doesn't do that. Neither does OS X. Neither does Android.

    But there's always been a version of windows with better battery life. It used to be called XP embedded. And it was exactly what you expected it to be -- you got to just start turning off huge parts of windows. You're welcome to do it. No, you don't want to. You don't want things to be slower, and you don't want to lose all of those great features. And many are tied together.

    And that's why you chose a windows machine in the first place. Not because it does the bare minimum, and hence saves battery life, but because it does everything it's always done at a reasonable battery life.

    But hey. If you want to complain about power vs features, I want you to look at my tvision's on-screen menu system. Now it's a smart tv, with a menu of icons to all sorts of dumb shit. And yet, just scrolling through those pages of icons is slower than my speak'n'spell. My tvision is plugged into the wall, with as much power as it wants. The led light bulb consumes more power than the computer running the on-screen menu. Why? I have no idea. But it also doesn't have a pre-amp, so I can't plug in any headphones or larger speakers without an optical cable and a home theatre amp/receiver. Thanks for that.

    1. Re:The things windows does, as a real OS by somenickname · · Score: 4, Interesting

      Defragging a potentially huge disk, in the background, on-the-fly, so the disk never slows down.

      Why on earth would it do this while on battery? Can't it wait until the machine is plugged in again?

      File search index, in the background, on-the-fly, so you can search faster. You can turn this off.

      Again, why do this by default when on battery?

      Full window dragging, and many other graphics enhancements. You can turn these off.

      This will have almost no impact on battery life unless you are spending most of your time dragging around windows for your own amusement.

      Is the printer still there? Let's check again.

      Why? If I'm not trying to print anything, who cares if the printer is there.

      Port polling, did you know that a USB port might gett polled 50'000 times per second? You can turn this down. A lot.

      Why default to such an aggressive polls/second while on battery?

      Scheduled tasks. Oh so many scheduled tasks. You probably have over 1'000 defined.

      I certainly didn't schedule over 1000 tasks. Why are there over 1000 tasks scheduled and why are they scheduled to run while on battery?

      Is the internet still connected? Let's check again.

      Why? I'll know as soon as a webpage can't load.

      An actual software Firewall. You can turn it off, or make it much simpler.

      If this has any effect on battery life then it is horribly, horribly written.

      Multi-user, multi-profile. Everything gets doubled.

      You have multiple users logged into your laptop while on battery? Sure, it's possible but, I find it highly unlikely that most people do.

      Is the printer still there? Let's check again.
      Is the internet still connected? Let's check again.

      See above.

      Event logging. Windows knows what it's doing, because it takes the time to write it down.

      That's the only potentially valid thing you've said so far. Well, the first sentence at least.

      The windows registry. It's probably the single most reliable aspect of any operating system. It's incredibly fast, always-on, used tens of thousands of times in a single moment by a any application -- my graphics suite writes 12'000 registry entries when I close the application. And you never need to worry about it getting corrupted.

      At this point I'm wondering if this is actually a troll.

      No fewer than eight different scripting languages available at any moment.

      I don't see how this could affect battery life at all.

      Twenty versions of a single DLL loaded concurrently, for cross-decade application compatibility.

      Except for the disk access to read the DLLs, just having them in memory makes no difference at all.

  14. Sony Vaio Pro (Windows) vs. 2013 Macbook Air by wheresthefire · · Score: 5, Informative
    The battery life per Watt-Hour of the Sony Vaio Pro 13 (Haswell, Windows 8) vs. 2013 Macbook Air (Haswell, OS X) are pretty similar, according to Anand's own tests: http://www.anandtech.com/show/7417/sony-vaio-pro-13-exceptionally-portable/4

    Moreover, the Sony Vaio Pro has a higher-resolution screen than the MBA, which puts the Vaio at a disadvantage (because it drains the battery a little faster). So with highly-optimized Windows drivers, the battery life looks the same or even better for Windows.

    The comparison to ARM is just stupid. Obviously battery life is better on ARM, at the cost of much lower performance. That's true for Windows and OS X both.

  15. Re:Reduce by Patch86 · · Score: 4, Informative

    Pretty sure Windows generally gets (sometimes substantially) better battery life than Linux.

    Rubbish. The netbook I'm typing this on right now dual-boots Ubuntu (full Unity bloat version) and Windows 7 Starter. It gets (or used to get a year or so ago, when the battery was a little newer) 6.5 hours under Ubuntu, more like 4.5 under Windows.

    Windows just isn't built to be light. It tries to do A LOT in the background to "improver your experience". Some of which might even work. But a lot of it will turn out to have been wasted effort ("Wow, you've indexed all the files in my Program Files folder, well done! If only I had any reason to access a single one of those files today..."). And in the meantime, you've managed to consume a full third of my battery...

  16. In the middle, a giant WTF by SuperKendall · · Score: 4, Insightful

    "The windows registry. It's probably the single most reliable aspect of any operating system."

    FUCK YOU.

    Sorry, reflex action from a decade and a half of dealing with the "most reliable aspect of any operating system" and the thing about windows that really drove me to OSX.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley