13 ms·
Apple MacBook Pro lasts 135 minutes longer on battery in full screen mode
- LeoNatan25 9y agoIt is not really surprising. All the window composition with frame-buffer effects (such as multiple layers of blur) takes a toll. Enabling “Reduce transparency” and “Reduce motion” in accessibility preferences also causes a considerable battery gain on Macs.
- malchow 9y agoSo is there a guide to battery-optimal MacOS settings? That would be useful.
- CharlesW 9y agoThese might be useful for you: https://www.apple.com/batteries/maximizing-performance/ https://www.apple.com/batteries/maximizing-performance/ http://www.macworld.co.uk/feature/mac/17-tips-increase-mac-battery-life-macbook-3634090/ http://www.macworld.co.uk/feature/mac/17-tips-increase-mac-b...
- ameesdotme 9y ago> Use Invert Colours to save battery life. It takes less battery to display black pixels than white ones. There's a lot of junk and mostly obvious stuff in the second article.
- LeoNatan25 9y agoThe tips above (reduce motion and transparency) also work great on iOS devices. Disabling AppNap is also important on battery. On iOS, the system does a lot when entering battery saving mode.
- joelrunyon 9y agoI think the snark is unnecessary. This is surprising because 1) The time - it's a full 2 hours and change - is not nothing. 2) It's not immediately obvious to many active computer users. I know it's cool to pretend like nothing is surprising these days, but this is something that's legitimately surprising to many people.
- deleted 9y ago[deleted]
- artursapek 9y agoExactly. I would be disappointed if this wasn't the result.
- exhilaration 9y agoWell, yes, it is really is surprising that you can go from 8.5 hours of battery life to almost 11.5 hours just by going from a windowed video to full screen. Apparently only you and Apple know the secret to this because similar battery improvements weren't seen when trying this trick in Windows on the same machine. Microsoft should hire you.
- LeoNatan25 9y agoMicrosoft crippled their DWM and cut out (as in, remove the code) all the Aero effects (blur). Compare how Windows 7 looks and how Windows 8 and 10 look, and you will see. It was done, partly, for batter life reasons. So… it seems, in addition to Apple and me, Microsoft has also figured out the secret to having a battery life–conscious window manager.
- jagger27 9y agoNot only that, but one that can handle HiDPI scaling in a way that doesn't make you want to rip your hair out.
- LeoNatan25 9y agoActually, on a technical level, on anything but the native scale (in display settings), Apple’s approach is more computationally heavy, as they render a larger texture and then rescale it to the native pixel size. On Windows, in a perfect world, a non–multiple scale should render still at native resolution.
- jagger27 9y agoIt's worth the trade off.
- 0xffff2 9y ago"Crippled" is a weird word to choose here. They made a design decision to prioritize battery life over fancy graphics. I don't particularly care about the fancy graphics, so that's a clear win for me. Is there something more I'm missing to justify the claim of "crippled" software?
- ygra 9y agoAs they note at the end, this only applies to OS X with QuickTime, but not to Windows 10 on the same hardware. So while it may be an obvious optimization to some people it doesn't seem to be implemented everywhere it could be. Or the DWM is more efficient than OS X's window composition stuff and there's no difference between windowed and fullscreen modes. Either option probably will annoy some fanboys one way or the other. One thing that they may have done is to simply change the refresh rate of the display to match the played video's (akin to GSync/Freesync) in fullscreen mode. You can't do so in windowed mode since it will affect other applications, but when a fullscreen video is shown you can safely do so and it may save a bit of power.
- mikewhy 9y ago> As they note at the end, this only applies to OS X with QuickTime, but not to Windows 10 on the same hardware. > > Using the Windows Media Player in Bootcamp, power consumption was at a much higher 28.2 W, and we found absolutely no difference between regular and full screen playback. Windows was less efficient overall, just with no difference in full-screen.
- bwat49 9y agoThey should have tested with the 'movies and tv' app that is now the default video player in windows 10. From benchmarks I recall seeing, it's by far the most battery efficient video player on the windows platform. edit: http://www.pcworld.com/article/3023430/hardware/tested-vlc-vs-windows-10-video-player-the-winner-may-surprise-you.html http://www.pcworld.com/article/3023430/hardware/tested-vlc-v...
- Fnoord 9y agoInteresting, and I'm curious why its like that. The only thing being tested is 4k video though. More tests are needed beyond 4k. Case in point: I don't own a mobile Windows device so it doesn't matter to me. On my MBP (2880 x 1800) 4k wouldn't apply either. I'd run either XviD or DVD.
- dagaci 9y ago
- jclardy 9y agoIt takes a toll, but not a 2 hour difference kind of toll. The OS has to be equipped to take advantage of the state for it to be that effective. Does the same test run on W10 or any linux distro do the same? I highly doubt it.
- LeoNatan25 9y agoOn Linux, if you use a desktop environment that has many GPU-heavy effects, you will see a worse drop off. On Windows 10, it doesn’t compare, as the most heavy effect DWM has to deal with is alpha blending (status bar transparency). Microsoft dropped all of Aero to save battery life. We’ll see how it fares once the new design elements (with blurred backgrounds) start appearing in future betas.
- coldtea 9y ago>Is it really that surprising? Yes. >All the window composition with frame-buffer effects takes a toll. Which would be relevant if they were moving windows around, instead of just watching a movie in full screen mode vs typical window mode. So not much (if any) composition and no frame-buffer effects in place. At worst, the tiny rect with the clock on the menubar was changing.
- undersuit 9y agoAncient Unix Secret[1]. Maybe it is related to "unredirect fullscreen" optimizations many Linux desktops employ. The people saying they don't get similar improvements in Windows by going fullscreen on the same hardware should run the test again with all the Windows 10 graphical improvements disabled. [1]http://losca.blogspot.com/2012/11/game-performance-improvement-for-ubuntu.html http://losca.blogspot.com/2012/11/game-performance-improveme...
- MBCook 9y agoThat's pretty neat. The thing that stands out to me like a sore thumb though is the 'load' numbers. You only get 1 hour of battery life. I know modern chips can be a hog but that terrible, especially compared to the 11 hours of light surfing on wifi. This is the problem with optimizing power sipping all over the place. As soon as you push things none of that matters and your battery time PLUMMETS. I don't know what they could do though outside of doubling the battery capacity.
- toomuchtodo 9y agoStop optimizing for pretty and add more battery. My laptop is a tool, not a piece of art.
- JohnTHaller 9y agoYou'll have to buy something other than Apple if you want that.
- toomuchtodo 9y agoI just buy only older refurb Apple gear.
- jethro_tell 9y agoAt some point, the hardware is no longer supported by the OS though.
- pgm8705 9y agoMy 2010 15 inch MBP is still getting OS updates. Installed 8GB of memory and an SSD a few years back. Other than the fact that 1.5 hours is about all I can get from the battery, I haven't been compelled to upgrade.
- jethro_tell 9y ago
- al2o3cr 9y agoI wouldn't be surprised if there's a "fast path" for this in the hardware - "decode H264 video to the entire screen" seems like a logical target for optimization.
- LeoNatan25 9y agoHardware accelerated decoding is enabled even in windowed players. On Macs, especially when using QuickTime, the only difference between fullscreen and “windowed” windows is the size of the surface and the hidden Dock and menu windows.
- taeric 9y agoI wouldn't be surprised if the trick is the resolution it is decoding to. Could test this by picking windows that are a related size to full screen. Could also have something that just gives the movie larger slices of computer time and clock down, if in full screen.
- LeoNatan25 9y agoThat makes little sense. When decoding to fullscreen canvas, on a retina display, the 1080p video needs to be rescaled from 1920x1080 to the retina resolution, whereas in windowed, it is 1:1 pixel mapped (in the case of QuickTime X).
- taeric 9y agoI was expecting they optimised there. I was also just throwing up ideas. :) I assumed convenient sized windows for the viewer, not native res ones.
- Matthias247 9y agoActually the size does not really matter, since the scaling will be done in hardware on the GPU if possible, and scaling in hardware (or shaders) is not a very intense task. For video playback you have a first step on the GPU, which is decoding the video (e.g. from h.264 into uncompressed video). You can from there go several ways, e.g. read the video back into main memory, do post-processing on the CPU and somewhere blit it back on a surface. This is not really what one wants for good performance. Instead of that all necessary post-processing (including scaling and other things like color-space conversion) can also be directly done on the GPU after decompression. Again, after that step the output can be read back or it can be directly forwarded towards the video output. For the best performance you go all-the-way on the GPU. This works in fullscreen mode as well as in windowed mode (you can instruct the GPU to use only a part of the screen for the video). I had some task in the last year where I had to use gstreamer for video rendering, and using various configurations I could see their impact quite good. E.g. CPU-based postprocessing (through the videoconvert pipeline plugin) was very slow compared to the GPU hardware-based one (vaapi) on the Intel Atom box.
- mattl 9y ago> Exciting: the MacBook Pro's video playback runs 135 minutes longer in full screen mode - the length of an entire feature film. A feature film is anything longer than 40 minutes. This idea that movies need to be 90 or 120+ minutes long is absurd.
- abritinthebay 9y agoDude, don’t be that guy. You know what they meant and everyone understood it.
- mattl 9y agoI just made a film, it's a really common misunderstanding that films need to be 90+ minutes long to be a feature film.
- nicky0 9y agoI just made a 40 minute film of my dog, is it a feature film?
- mattl 9y agoYep. For a series of shorts (less than 40 mins) starring just dogs look at The Dogville Comedies -- https://en.wikipedia.org/wiki/Dogville_Comedies https://en.wikipedia.org/wiki/Dogville_Comedies
- dguaraglia 9y agoThe reason why you are being downvoted is for focusing on the one thing that nobody could give a crap about in the article. We are talking about battery life, not the definition of what a "feature film" is or isn't.
- mattl 9y agoI'm aware, but it's not something nobody could give a crap about.
- luigi23 9y agoI'm wondering whether this live blur effect might have played a big part here. Since its full screen, macOS doesnt need to render all these fancy effects. I'd like to see similar tests with live blur turned off.
- amelius 9y agoAre these effects active also in "steady state use"?
- sz4kerto 9y agoNormally yes -- a bit similar to e.g. when a game is displaying a seemingly 'static' image (when you don't move your character), then the GPU is still rendering at X frame/second.
- amelius 9y agoYikes, that would indeed be the first thing to fix on a battery-powered platform then.
- captainmuon 9y agoWhat?! That sounds like something I would write as an amateur. I thought that modern graphics systems would be smart enough to only render when the screen has actually changed. I.e. a tick still comes at 1/60 times a second, and it checks if a region is dirty, but the whole copying of textures and re-compositing (which practically doesn't take time - or rather fixed time - and runs on the GPU, but costs power) is only invoked when something is dirty. Actually, I remember reading something that Windows doesn't do any blitting / buffer swapping if you just leave it idle and no updates happen on screen. However, there are many ways to throw this off and force drawing every frame if you are not careful.
- LeoNatan25 9y agoOf course. If you disable it in settings, you should see a noticeable boost in batter life (~1–1.5 hours in my testing).
- _joel 9y agoWould this not be down to the GPU, if it's told to use full screen without windowing, then it'll be more efficient?
- jethro_tell 9y agoYes, this isn't the only bloated window manager that gets more efficient when it only has to draw one app without a window.
- deleted 9y ago[deleted]
- azr79 9y agothis isn't news, app nap existed in macOS when it was still called OS X
- deleted 9y ago[deleted]
- jasonlotito 9y agoThis is a feature that has been called out by Apple in the past with regard to battery life. Even iPhones get better battery life when just doing video as opposed to other things. In part, it's because of specialized hardware for decoding. Even the headline here is misleading. It's not full screen mode. It's explicitly using features Apple has made available for some time now. That this is surprising is really interesting. I honestly thought this was a known thing.
- jclardy 9y agoThe 2+ hour difference is comparing playing video windowed and fullscreen, not video to other tasks.
- jasonlotito 9y agoYes, I know (and it's not just video fullscreen, it's video in QuickTime). And as I said, I thought this was known. Apple has called this out. I mean, did people really think that merely playing a video extended battery life? Or did they just forget about those features that Apple talked about.
- dwighttk 9y agoDo you see the same or similar results browsing in windowed vs fullscreen modes? (I rarely watch video on battery in a window, but I might start browsing fullscreen on battery if there's a benefit)
- satysin 9y agoMy guess would be that macOS shuts down all the additional composition features when full screen is activated so no need for live previews (or even rendering at all) of other windows, all those pretty bokeh effects, etc. Plus it probably means they can switch to a more efficient hardware decoding configuration as they can dump directly to the screen rather than into an application window? I am just guessing though. Interesting that the difference is over 2 hours though, I wouldn't have guessed it would be that much.
- sillyclown666 9y ago"OS X v10.6 and later automatically optimize the performance of screen-sized windows, allowing your application to take complete advantage of the window server environment on OS X. For example, critical operating system dialogs may be displayed over your content when necessary." https://developer.apple.com/library/content/documentation/GraphicsImaging/Conceptual/OpenGL-MacProgGuide/opengl_fullscreen/opengl_cgl.html#//apple_ref/doc/uid/TP40001987-CH210-SW4 https://developer.apple.com/library/content/documentation/Gr...
- fixmycode 9y agoWhat I would've love to see is if this feature is unique to the QuickTime player, and if it is, can it be ported to something like VLC.
- personjerry 9y agoIf you're a gamer who plays on sub-optimal hardware, chances are you already know this. In general, full screen mode tends to perform better than windowed mode. Windowed mode means that the OS has to render and handle logic for all the window-y stuff, i.e. shadows, borders, close buttons, menus. In Windows 7 I recall a perf win was to turn off the Aero translucent window decorations, and an even bigger perf win was to simply go full screen with your game.
- hhmc 9y agoNot only that but you're guaranteeing yourself one or two extra frames of input lag due to the double/triple buffering.
- LeoNatan25 9y agoDouble buffering is always enabled; there is no such thing as “single buffering” in modern computer graphics. What you are talking about is enforced v-sync to prevent tearing on the normal desktop environment.
- wtallis 9y agoAnd triple buffering never means more latency than double buffering with vsync. Unless you're talking to Microsoft, who didn't have real triple buffering for a very long time so they took to using the term to refer to a FIFO queue of rendered frames.
- randyrand 9y agoSamsung Galaxy phones are single buffered when in VR mode. They 'race' the beam by rendering to the left eye buffer while the right eye is being scanned out. then switch. Just a neat fact.
- londons_explore 9y agoSo if rendering takes too long, you see a partially rendered frame?
- llcoolv 9y agoI am absolutely not surprised that almost all Apple users have failed to notice the massive CPU usage of the window manager.
- abalone 9y agoTwo best explanations: 1. Screen brightness can be dimmed in full screen mode without a perceivable difference. 2. App nap. It's a macOS feature that dials down the power consumption of apps when their windows aren't visible.
- thanatropism 9y agoApp nap is amazing. Mac OS X reached an astounding level of technical goodness in Snow Leopard. Downhill since then. When my Macbook died I bought a refurbished, shitty Chromebook. Living off Azure Notebooks for any kind of computing...
- PascLeRasc 9y agoApp nap is really great, I agree. But you know you can still run Snow Leopard, right? You could get an older pre-retina MBP for like $400 to run it at about the same speed as a Chromebook will run ChromeOS.
- ctrlrsf 9y agoMuch less secure though.
- deleted 9y ago[deleted]
- zyb09 9y agoOSX is still pretty great. After Snow Leopard, for a while it looked like OSX is gonna turn into "iOS Desktop Edition", starting with Lion. But that never really happened, Sierra is a very nice OS, and High Sierra is basically the same thing with the OS using Metal. (Now if only Apple would sell a Macbook or iMac with 512 SSD & 16 GB RAM for a reasonable price)
- gok 9y agoWhat? App nap was added many releases after Snow Leopard. Edit: 3 releases actually. (Mavericks)
- samat 9y agoVery click bait title. Sound like gain in any use case, where in reality it's just video playback :((
- jordache 9y agook so they squeezed some more battery life for watching jackass the movie. How about they figure out the combination that leads to consistent kernel panic when plugging in/out external monitors.
- switchbak 9y agoThis might sound like a plug, but I found it to be very useful/related: when searching for a utility to control App Nap (suggested here) and actually have more control over that, I found the App Tamer utility. This looks like I can now throttle the CPU usage of background tasks like Chrome/Slack, etc. I do a ton of road warrior stuff on my old MacBook, and I've been struggling with a battery that craps out in under 2 hours due to all the background junk in the Mac OS. This looks to be super useful to me, hopefully others will find the same. https://www.stclairsoft.com/AppTamer/ https://www.stclairsoft.com/AppTamer/
- djrogers 9y agoShould be noted that this testing appears to have been done playing video in full screen mode. macOS has a full screen mode that any app can take advantage of, it would be good if someone could test that as well.
- chiefalchemist 9y agoI read a fair number of the comments. Most of the guesses/explanations on why there's a difference make sense. But over 2 hours? That's a significant dip in power consumption that doesn't seem to be explained by most of the comments. Of course, I could be wrong. I'm not an internals junkie. (Sorry?)
- miga 9y agoThat strongly suggests that Apple's window manager is suboptimal. Is it not?