GPU Accelerated H.264 Decode

Both AMD and NVIDIA have fully accelerated H.264 decode on their GPUs and chipsets with integrated graphics, something Intel just recently added with G45. Apple has historically done a terrible job of taking advantage of GPU accelerated video decode features in its OS, which is partly why it took us so long to get somewhat acceptable deinterlacing in Apple's DVD app, despite solid deinterlacing support by the GPU vendors.

Part of the problem is that unlike on the PC platforms, companies like ATI and NVIDIA don't write the entire driver for Mac OS X. The GPU vendors provide the hardware interface portion of the driver but Apple handles much of the rest. It's up to Apple to take advantage of the various features supported by the GPU, and most of them aren't high on Apple's priority list.

With Apple heavily pushing H.264 as the codec of choice and offering high bitrate HD H.264 movie trailers at www.apple.com, the move to NVIDIA's GeForce 9400M appeared to be the perfect time to take advantage of GPU accelerated H.264 decode. For the first time ever, Quicktime will use the GPU for the majority of the decode pipeline when playing back H.264 content.

To test the impact of the GPU offload I measured CPU utilization while playing back the 160MB 1080p trailer of The Spirit from Apple's movie trailers website:

  New MacBook Pro 15" Old MacBook Pro 15"
CPU Utilization 10% 30 - 50%

 

The old MacBook Pro saw 30 - 50% of its dual core Core 2 Duo 2.5GHz CPU used up to decode the trailer, while the new MacBook Pro only needed 10% as the rest was done on the GPU. The GPU is also a more efficient place to perform H.264 decoding so you'll actually see an increase in battery life when playing back hardware accelerated content.

As OS X still lacks any official Blu-ray support, the H.264 decode acceleration isn't very useful beyond playing these sorts of files, but it's a definite start. It's also unclear how easy it will be for 3rd party developers to tie into the GPU acceleration hooks or if Quicktime will be your only hope for that.

Performance Battery Life: Take Two Steps Forward, and Two Steps Back
Comments Locked

66 Comments

View All Comments

  • MacMatte - Sunday, June 21, 2009 - link

    For those of you who insist that Apple brings back the matte screen option, please leave a comment at http://macmatte.wordpress.com">http://macmatte.wordpress.com - it's a website solely focused on the issue of bringing back the matte screen. See the number of pro-matte comments already at the MacMatte website.
  • drbrady63 - Thursday, June 18, 2009 - link

    I am trying to identify if a new macbook pro 13" would be adequate for editing with Final Cut Express, and for that matter, Final Cut Studio. Unfortunately, it has a 5400rpm hard drive and that is not good for editing. But, I wonder if an optional ssd would be fast enough??

    I would use the 13" for more mobile work and dock it with a larger monitor for more involved editing work.

    Any thoughts on this would be appreciated.

    Dan Brady
  • richmoffitt - Sunday, November 9, 2008 - link

    This is an uneducated guess, but I'm pretty sure that Quartz works in ways similar to X11, where changing graphics drivers requires a restart of the window manager.

    You're right though -- this is only a software problem and can hopefully be fixed in the near future (if it's a big enough issue for their user base anyway).
  • scipi - Monday, October 27, 2008 - link

    Hope the quality of the components is better than the first gen MacBook Pro's. Mine is on its second H/D, gone through 2 logic boards and now needs a third, this time outside of warranty. Wont be buying another Apple again which is a pity because OSX is great.
  • Zebo - Saturday, October 25, 2008 - link

    Vista is bloated resource hogging junk - You should have tried the OS many of use still use - Windows XP for battery life. I get over 4 hours on my R31 thinkpad with winxp pro.
  • Ronbo13 - Saturday, October 25, 2008 - link

    You photos comparing the glossiness and reflection on the screens was not fair, though. Please notice that the laptop on the right (the new MBP) is reflecting a portion of wall that has direct sunlight shining on it, and the laptop on the left is reflecting stuff that's in shadows. So even if the screens were equally reflective, the one on the right would show tons more reflections.

    Come on, people. Normally you guys pay more attention to details. That's just sloppy.
  • ioannis - Saturday, October 25, 2008 - link

    nop, you are wrong. Both of them reflect stuff that have direct sunlight. Notice Anand's reflection for instance, or the wall on the left hand side of the old MB and the wall on the right hand side on the new one.

    I'm referring to this:
    http://images.anandtech.com/reviews/mac/MacBookPro...">http://images.anandtech.com/reviews/mac/MacBookPro...
  • Enrox - Saturday, October 25, 2008 - link

    Anand, why don't you test Vista installing it on the new MacBook Pro without using Bootcamp, you need to wipe out the drive and create a MBR partition and use Vista x64 SP1 (it supporta EFI), the only thing you need to know is that at startup you have to press the Alt key and manually select the Windows disk in order to boot from it, beside that everything else seems to work just fine with the Vista native installation (tested on a white MacBook Penryn 2.4 GHz 4GB ram).
    It would be very interesting to see if you get the same exact battery life numbers bypassing Bootcamp.
  • JonnyDough - Friday, October 24, 2008 - link

    Until Apple stops being so shady, I won't have anything to do with them.
  • aos007 - Friday, October 24, 2008 - link

    I have brand new Vaio Z laptop and I can get 5 hours battery life IF I disable Vista sidebar. It does not matter whether there's no widgets running, it seems to use 10-15% of CPU time no matter what. This translates into a big loss of runtime - I'd get 3.5 hours versus 5. Unfortunately, I like Sidebar as there are some useful widgets, as well as for eye candy so I feel Vista is crippled without it.

    So the question is whether you disabled Sidebar during Vista testing? I am guessing not since it runs by default and if so, that may be part of your answer.

Log in

Don't have an account? Sign up now