MacBook Pros with NVIDIA GeForce GT 330M silicon making questionable graphics switching decisions
"With every choice you make, ask yourself: is this a good choice, or is this a bad choice?" That's the sage advice we were constantly given as tykes -- and it's advice that replays in our feeble brains every day as we write news. Turns out it's also a piece of wisdom Apple's latest round of MacBook Pros would be wise to heed, because currently, they're making some awful decisions about when to turn on that power-sapping NVIDIA GeForce GT 330M discrete chipset. Read on to see what we mean.
[Thanks, Tom]
The idea, of course, is that the computer is supposed to automatically manage when it moves between the relatively meek integrated Intel graphics and the more powerful discrete silicon based on need, but "need" is a relative term. Intel's graphics sip power, but they're actually less capable than the 9400m integrated graphics from the last generation, so there's a real demand for discrete in graphically-intense situations. Apple's switching technology looks at how an application is built, picking up on what "Core" OS X technologies (like Core Image, Core Video, Core Animation, OpenGL) it's planning on using, and switches on the discrete GPU accordingly. Conversely, NVIDIA's Optimus technology on the PC is based on an application whitelist that NVIDIA maintains which may not be as attractive or elegant as Apple's solution, but is user-customizable on an app by app basis. You can also easily monitor when the card is on or off, and switch off manually, two things Apple decided it didn't want its own users to do.
Lucky for us, a MacRumors forum member noticed that you can figure out which chipset's currently in use by looking at the display list in the Graphics / Displays section of your MacBook's System Profiler, so we did a quick survey -- and it ain't pretty. Photoshop and iMovie understandably put you into discrete territory, but Lightroom 3 beta 2, strangely, does not. Oh, and iPhoto '09 is more than happy to sip upon that sweet NVIDIA nectar. Core Image is probably to blame, but it's still an odd requirement for such a "consumery" app.
But it gets worse. Viewing QuickTime movie trailers on Apple's site in Chrome (a buggy experience, by the way) bumps you up to discrete, but doesn't bump you back down after you're done -- only closing the browser and opening it up again seems to reset it. Firefox and Safari keep you on integrated graphics the whole time -- as does downloading 480p or 720p content to your local QuickTime player -- but pulling up 1080p video locally kicks you into high gear (this sounds closer to the correct behavior, at least).
The most egregious thing we've seen, though, has to be Tweetie. Yes, little ol' Tweetie, that innocuous applet that stays out of your hair and shoots you a Growl notification every once in a while: as long as it's open, it's going to be rockin' the discrete graphics. The bottom line is that this is a great opportunity to underscore something we've said before, which is that Apple needs to bring back an ironclad disable option for the discrete graphics like it does with the older unibody models -- especially when battery life is supposedly Cupertino's single biggest push with these things. Of course, failing that, we've got to hope that some third-party dev out there has the wit, courage, and spitfire to craft a simple toggle utility.
[Thanks, Tom]
The idea, of course, is that the computer is supposed to automatically manage when it moves between the relatively meek integrated Intel graphics and the more powerful discrete silicon based on need, but "need" is a relative term. Intel's graphics sip power, but they're actually less capable than the 9400m integrated graphics from the last generation, so there's a real demand for discrete in graphically-intense situations. Apple's switching technology looks at how an application is built, picking up on what "Core" OS X technologies (like Core Image, Core Video, Core Animation, OpenGL) it's planning on using, and switches on the discrete GPU accordingly. Conversely, NVIDIA's Optimus technology on the PC is based on an application whitelist that NVIDIA maintains which may not be as attractive or elegant as Apple's solution, but is user-customizable on an app by app basis. You can also easily monitor when the card is on or off, and switch off manually, two things Apple decided it didn't want its own users to do.
Lucky for us, a MacRumors forum member noticed that you can figure out which chipset's currently in use by looking at the display list in the Graphics / Displays section of your MacBook's System Profiler, so we did a quick survey -- and it ain't pretty. Photoshop and iMovie understandably put you into discrete territory, but Lightroom 3 beta 2, strangely, does not. Oh, and iPhoto '09 is more than happy to sip upon that sweet NVIDIA nectar. Core Image is probably to blame, but it's still an odd requirement for such a "consumery" app.
But it gets worse. Viewing QuickTime movie trailers on Apple's site in Chrome (a buggy experience, by the way) bumps you up to discrete, but doesn't bump you back down after you're done -- only closing the browser and opening it up again seems to reset it. Firefox and Safari keep you on integrated graphics the whole time -- as does downloading 480p or 720p content to your local QuickTime player -- but pulling up 1080p video locally kicks you into high gear (this sounds closer to the correct behavior, at least).
The most egregious thing we've seen, though, has to be Tweetie. Yes, little ol' Tweetie, that innocuous applet that stays out of your hair and shoots you a Growl notification every once in a while: as long as it's open, it's going to be rockin' the discrete graphics. The bottom line is that this is a great opportunity to underscore something we've said before, which is that Apple needs to bring back an ironclad disable option for the discrete graphics like it does with the older unibody models -- especially when battery life is supposedly Cupertino's single biggest push with these things. Of course, failing that, we've got to hope that some third-party dev out there has the wit, courage, and spitfire to craft a simple toggle utility.























Apple knows best
@DrDr Maybe Apple should give the users at least some choice...
@adarkn
HE SAID APPLE KNOWS BEST!
@DrDr You, sir, pack a whole lotta snark in just 3 little words. Kudos.
An other cup of Drank please.
@DrDr if the whitelist from nVidia Optimus is updated through the web, why in the hell Apple bothered to implement such a extremelly more complex solution? Didn't they never heard of "Keep it simple"? Oh wait...
@n0ne Purple drank?
@Chris Ziegler : AppleDrank.
@adarkn If your users have a choice, you blew it.
@CJisohsocool
Apple should have been named Oracle!
@Chris Ziegler Well, you have to ban AppleDrank before we can get our PurpleDrank.
@CJisohsocool
made my day
@bvds Optimus is Windows only, so Apple had to develop their own solution. Neither is perfect.
@Chris Ziegler
Mixed Drank
@DrDr /facepalm
Glad I can manually switch mine.
@One Love Don't you mean iDrank?
Wow! Yet another point in the win column for the 1st gen Macbook Pros after the Expresscard and removable battery wins... I thought the integrated graphics that were in use were the 9400M (or whatever the 2010 equivalent is) not shitty Intel HD... The 9400M was awesome because it accelerates any 1080p/720p H264 MP4 content on Quicktime X without the need of the discrete card. Having to go discrete everytime would be daylight rape on the battery!
The day these new MBPs came out I was jealous as sin, but it looks like us 1st Geners are getting the last laugh ;)
@Shash450
*1st Gen Unibody Macbook Pros i mean...
GUYS, EDIT BUTTON PLEAAASE!
@DrDr
bad batch of unicorns this time :(
:P
@DrDr I think possibly the benchmarking would have made more sense if they had compared a Core i5 against the older Core 2 Duo. Two extra cores makes a slight difference.
Question is, will you get it? Opinions. http://j.mp/corei5i7-series-macbook
@meryanuyl What two extra cores?
@CJisohsocool Ahahahaha
@Shash450 This has nothing to do directly with Apple. Intel locked out CPUs i3 and i5 from being connected to third party mainboard chips like the 9400M. The graphics are built into the CPU so you HAVE to use them, if you want discrete (or any other choice) you have to have a full PCI-e GPU on board. nVidia made a bunch of noise all last year and this is what it comes down to. Intel has it set up so you can have great battery, or great graphics but Intel is not allowing OEMs to choose. This is the same problem with the new round of ATOM chipsets as well.
Apple is basically committed to Intel brand processors and to Nvidia OpenCL specs for the best performance of their software. It is what it is. Intel is a childish monopolistic company but AMD chips just don't do what Apple needs on the laptop front.
Apple realized their mistake for using Intel "extreme" video a bit late or they probably would have included the integrated nVidia chips sooner. Trusting Intel to make better chips probably did make the porting process of the whole OS to a different architecture much easier though.
Back to the issue at hand, Apple is committed to hardware acceleration when they need it. This is a key difference between Windows that will let the hardware and software drivers lie to you and Apple stuff. It's been known that certain features of iPhoto09 and Snow Leopard for example didn't work on older Macbooks because hardware evolved. In the Windows world they just keep "bolting on" another software patch or layer of binary compatibility who cares if your dial-up modem or printer driver eats up 50% of your CPU, right ... on Mac they trim the fat but you have to "keep moving forward" or you'll get left behind. It's a development choice sacrifice eternal marketshare or have the best machine that's reasonably priced.
Intel's "integrated" chips lie about what they really support and the drivers map routines common in Nvidia hardware to CPU cycles making them 10x slower... Microsoft Vista lost the PR war for EXACTLY THIS REASON. Intel begged Microsoft not to demote Intel chips for their Poor 3D and Microsoft paid the price when everybody got Vista Premium on their "extreme" graphics laptops that had 3 year-old graphics nobody could upgrade to properly run Aero.
@ToniCipriani if you dont come across as a smug prius driving asshole, you blew it.
Check out this unrelated item http://techslaves.org/isight-disabler/
It disables the driver for the iSight camera via a AppleScript. I imagine someone could find the driver for the discrete GPU and modify the AppleScript, thus giving a user controlled way of shutting down the power sapping GeForce GT 330 for sustained battery life savings.
@DrDr They clearly thought different on that one
Just as I ordered one of them yesterday.
Oh well, it won't get here for a whole, chances are it'll get fixed before then (hell, who am I kidding.. I'll be tethered to a wall with it.)
@Gu3st
You sort of bring up my concern on this. How does this change their touted "8-9 Hours of battery life" on the 15 and 17 inch MBPs?
@jivetrky It'll definitely make it lower. Not that I much care about the battery life as much as I care about speed (I'll be forcing it to discreet GFX anyways). I've lived with a MBP that does (now) like 2 hours tops for battery life... I'm sure I can live with one that maybe gets 6 but runs like a beast.
@Gu3st
Don't worry, Apple's version is waaaay better than Nvidia's. Right, Apple?
@sonicyoof I'd much rather it attempt to throw too much oomph at a problem, than try to play TF2 or something with the integrated chip.
@Gu3st
My point is that, in my opinion, Apple's major edge over other, PC based, laptops is it's battery life. Some will argue there are other worthwhile advantages but, for me, the price/performance ratio makes the macbook very unappealing. The main "pro" I could make for it was the very good battery life, and that might not be as good as they claim.
@jivetrky When Apple said they will do the management themselves that pretty much gave a warning right there. Nvidia knows how to manage this better then Apple they where probably just to impatient to give them time to make a mac solution and this is what happens, and come on did you really think you will get 8 hours on a 15inch or 17 inch laptop with the type of hardware these got inside. I can get 4 to 5 hours on my Acer Quad Core if it is not doing anything but just sitting there and the display has shut off.
@Gu3st
The last gen had an issue with the SATA controller. Then when they fixed it it had a problem with SSDs. Looks like this is this gen's problem.
@Gu3st But some of these things really aren't that odd.
1. iPhoto makes sense. It's a consumer app yes, but it can also use a lot of power. And more than playing back 720p video.
2. Lightroom 3 b2. Ok, this sounds like a bug. Photoshop correctly identifies itself, so it's certainly possible. This question should be how does Lightroom 2.6 or 2.7 respond?
3. You mentioned Chrome was buggy. Clearly this isn't normal. Chrome asking for more power while playing video could be caused by who knows what. The fact that it doesn't return should be fixed, but this sounds like a chrome issue.
4. Quicktime. The question is only on 720p video? Does it need to be switched?
5. Safari: Safari should hopefully treat video like any other video apps. Quicktime and HD Flash should get more power when they need it. For the most part, they can operate semi-independantly of Safari.
There's two problems for graphics cards: Performance and Battery Life. If you think it's not behaving right, then is one of those two really a problem? If it is, then something needs to be fixed, if not…then well, it doesn't seem like a problem.
@TheOne
"Nvidia knows how to manage this better then Apple they where probably just to impatient to give them time to make a mac solution and this is what happens"
With respect, nVidia doesn't exactly have a flawless track record and Apple's solution (if it works) makes much more sense. Optimus has the flaws that it doesn't disable the integrated graphics when using the discreet GPU and it relies on a published whitelist to determine when the discreet GPU is needed (or not needed, I'm not certain what the default assumption is if the application is not listed). In contrast, Apple's solution will disable the integrated graphics when not being used and effectively enables the application running to decide what it needs based on the graphics frameworks that it is using.
Still, it has to be said that Apple's solution is only better if they make it work properly. However, I'm not really seeing anything here that gives me cause for concern, with the possible exception of the Lightroom issue that might just be a bug in the current beta.
It's all so elegant until it doesn't bloody work.
@lookseehear Apple always seems to be plagued with issues as of late
@lookseehear
That's Apple alright. Attractive on paper (as long as the paper in question is written by Apple), will likely not work or at least do more harm than good (*cough* iTunes).
@Ericloewe
iTunes does more harm than good? I'd love to see you quantify that.
Haters gonna hate.
@lookseehear Sounds like it works just fine. When you first launch Tweetie it does a completely superfluous fade-and-zoom swooping effect... and that's just for the login screen. No wonder this thing causes the discrete to kick in.
It's weird seeing Engadget complain that you have to quit Chrome to drop it back into integrated graphics mode since that's exactly what you'd have to do for a whitelist too, except the whitelist would have started using discrete immediately instead of waiting until you started playing a video. Plus it's obviously a problem with Chrome not cleaning up after itself properly when you're finished watching the QuickTime video.
What would you guys do without forums.MacRumors.com
@joga bonito
Probably start their own
I think it is a pretty slick setup for everyday use but I would just like an easy way to switch it on and off myself.
Here We Go...
Apple think that we can't turn it ourself, soon apple gonna decide when to shutdown too.
If you put an option that lets you decide, you've failed.
@Baconbits If you give the user a choice, you've failed.
@Baconbits
Baconbits wins this entire post.