Apple's GPU Switching Technology

The Core i5 and i7 CPUs all come with their own on-package CPU called Intel's HD Graphics. This DX10-class GPU is capable of playing games and has a capable HD video decode engine, but it's no match for a discrete GPU.

As I mentioned earlier, all of the 15 and 17-inch MacBook Pro models ship with NVIDIA GeForce GT 330M discrete GPUs in addition to the two Intel chips (Core i5 + H55M). Despite being built on a 40nm process, the GT 330M could easily knock off an hour of battery life just by sitting idle while you type away in Pages.

Apple has had this problem before. The previous unibody MacBook Pros with discrete graphics had a software switch that you could use to turn the discrete GPU on/off. It was a pain to use however since you had to log out after switching modes.

The Old Method

With the new MacBook Pro, Apple implements an automated switching system similar to NVIDIA's Optimus technology. Instead of relying on application profiles, OS X looks at the functions called by any running application and determines whether the Intel HD Graphics is sufficient or the GeForce GT 330M is needed. Applications like video playback are low key enough to run exclusively on the Intel HD Graphics, while 3D games and applications that take advantage of GPU acceleration appear to wake up the GT 330M.

Update: Apple has given us a list of frameworks that will trigger the discrete GPU, they primarily include: OpenGL, OpenCL, Quartz Composer, Core Animation and Core Graphics. Also, if you plug in an external display the discrete GPU is also turned on.

Apple has also confirmed that both the discrete and integrated graphics cores have their own connection to the display. There's no copying of frame buffer data, the GPU that's in use is the one that's storing and displaying the screen. If the integrated graphics core isn't in use it is put into its lowest power state.  If the discrete GPU isn't in use it's completely shut off.

Power Consumption Comparison
  Intel HD Graphics Only GeForce GT 330M
Idle at OS X Desktop 11.5W 15.1W

The switching process is seamless and there's no indication of what GPU is being used at any given moment. That's both good and bad. You don't have to muck with any software switches, but you also rely on Apple to make the right decision based on your current workload. Without a way of telling what is making the discrete GPU wake up, there's no way to know whether something as simple as leaving an application open is causing you to have lower-than-ideal battery life.

There's also no way to turn the GeForce GT 330M off completely, regardless of application. This is one area where Apple completely wrestles control away from the end user. I'm all for automated switching systems, just not ones that don't reassure me that they're always making the right decision.

Despite using a NVIDIA GPU, there's no support for Optimus under Windows 7 on the new MacBook Pro. The GeForce GT 330M is always in use there regardless of whether you use an Optimus enabled driver or the 196.21 driver that comes with the MacBook Pro.

No AES-NI Support in OS X? The GeForce GT 330M


View All Comments

  • n0dder - Friday, April 16, 2010 - link

    Would you say that the increased working temperatures in the new MacBooks prohibits its use as a real Laptop? I'm currently using a rev 2.1 MacBook (2.16GHz), and spend 3-6 hours with it in my lap every day, and while it gets too hot if I stress it, surfing the web and doing light work is fine - if the new MBP's run hotter than that, I guess that I shouldn't have waited this long, but have gone for the previous model.
  • Terry1 - Saturday, April 17, 2010 - link

    On page 5 of Anand's review, he notes that OS10 manages the switching between imbedded graphics and the Nvidia board. No user control apparently provided. Question: what happens when you are running bootcamp with Windows 7 as second operating system? Is OS10 lurking in the background to keep this process functioning, or (my concern) does the system just default to the imbedded GPU mode? Reply
  • Terry1 - Saturday, April 17, 2010 - link

    RE my prior post it looks like I missed this comment in the review: "Despite using a NVIDIA GPU, there's no support for Optimus under Windows 7 on the new MacBook Pro. The GeForce GT 330M is always in use there regardless of whether you use an Optimus enabled driver or the 196.21 driver that comes with the MacBook Pro." That's the way I would want it given manual control is impossible, but has this been verified by a user/tester? Reply
  • PubicTheHare - Sunday, April 18, 2010 - link

    Anand said to wait until the next revision of Arrandale if we want cooler laptops.

    "Next revision of..." meaning these new MBPs are Arrandale?

    If they are (I'm assuming Arrandale is 32 nm), then what would the next revision bring to equate to cooler machines?

    I'm disappointed in the heat issue. My Santa Rosa MBP (early 2008) runs hot as hell, especially when I watch YouTube but even if I'm not running video or flash. It bugs me.

    I won't upgrade until:

    1) OS X supports TRIM (so I can throw in a Crucial C300 SSD or higher capacity Intel G2)
    2) USB 3.0 or Lightpeak is available on the MBP
    3) The laptops run cooler with discrete graphics

    I was really hoping to upgrade this time...
  • BillyboyPC - Tuesday, April 20, 2010 - link

    These MacBooks will be perfect with more affordable SSDs and USB 3. Until then, it's still a no-go for me. Reply
  • R0N1 - Wednesday, April 21, 2010 - link

    Great article, but at least one aspect not mentioned:
    All the Arrandale chips mentioned are the standard voltage M version with 35W TDP. True, this TDP also includes integrated GPU, but still: 35W is a lot for a laptop.

    The 18W 640UM, 620Um & 540UM are probably "reserved" for new MacBook Air,

    But it would surly be beneficial for MBP to use the 25W LV parts (current lineup lists i7 620LM & 640LM) - any chance Apple would consider using them in MBP?

    After all, all the Penryn P series CPUs are medium voltage 25W TDP chips, compared to cheaper (per MHz) T series standard voltage 35W ones.

    The new Arrandale revision you mentioned - is this really silicon respin supposed to trim excessive power from the standard voltage M chips, just production process improvement or merely chip binning?
  • jvin85 - Friday, May 7, 2010 - link

    Anand Lal Shimpi,

    I didn't see any mention about the memory difference for the Geforce GT 330M. I was wondering what differences the extra 256MB makes.

    I'm considering upgrading as I use an early 2008 MBP. Back then going for the better graphics card was always a big debate. I am wondering if it truly makes a difference in these models.

  • Kathi - Wednesday, August 18, 2010 - link

    I am thinking about bying a 13″ because I like the size and it would be perfekt for me. But I prefer the new i5 processor. Do you think there is a chance that there will come a new 13″ with the i5 processor? Soon? I don´t want to wait too long, but it would be stupid if a new version comes out just after I bought one… Reply
  • xxunrealdudexx - Friday, August 20, 2010 - link

    Heading off to Uni in the fall but can't decide between 13" or 15". Which should I get? I'm in the BBA program so I don't think ill be needing Photoshop/Final Cut/etc.?? And I would like it to last for the full 4 years at least. Thanks guys! Reply
  • juhku - Friday, September 3, 2010 - link

    Great article! Thanks!

    Any new information about Arrandale update to get the MacBook run cooler? Is it happening and when?

Log in

Don't have an account? Sign up now