

OS X Chooses Discrete Graphics for Status Bar App - mootymoots
http://www.reynoldsftw.com/2010/04/status-bar-app-has-os-x-choosing-discreet-graphics-sucking-battery-life/

======
lygaret
Apple isn't "using discrete graphics for that app", Apple is using discrete
graphics for a given set of APIs which CloudApp is using to do something. Did
they need to do it that way? Maybe, maybe not, but the onus is on the
application developer, not Apple. It's not like Apple has some master list of
applications that use discrete graphics, it kicks in on certain API calls.

Silly little rants like this, where someone doesn't quite understand the way a
system works and so blames the wrong provider; these things are the reason for
Apple's crazy draconian SDK terms. Imagine a similar situation on the iPhone:
"Waa, Apple killed my battery life when I run this application at boot!" 10
million retweets later, Apple is having to explain some third party
application's deficiencies, and it could very realistically effect their
bottom line.

~~~
krakensden
No, they are. They decided, for no goddamn good reason, to switch on the
discrete graphics chip when certain APIs were called, after doing a whole lot
of work for years and years to encourage the use of said APIs.

AMD is doing this the right way- turn it on when you plug in, and let users
toggle the thing manually. Optimus seems like an interesting compromise. But
API sniffing is ridiculous, because 3D != Intensive 3D That Must Be Fast.

~~~
mootymoots
exactly... The idea is great, but needs more thought, because as you rightly
suggest, not all 3D graphics = intensive, and not all types of app (ie status
bar apps doing nothing) require discrete graphics card switch on 100% of the
time...

THIS, is the issue.

------
mootymoots
I'd like to be clear right now what this article is about. It's about Apple's
choice to get frameworks such as Core Image and OpenGL to direct which
graphics card the Mac should use, and how by doing this, there have been some
unusual cases whereby some applications cause the dedicated graphics card to
be enabled, and continue to be enabled. This leads to a detrimental effect on
battery life which is the exact opposite for putting this in place. With this
in mind... read on.

------
tuacker
Sometimes I think Apple just jumps out of a moving train. For example it isn't
possible to turn off the notebook display and only keep the connected
monitor/projector active. Or, if you wake it with the lid closed to turn on
the (notebook) display at a later time without disconnecting the external
display.

Same with this. I can understand why they do the switching the way they do it,
but where is the harm in putting a "Don't use discrete graphics" option in the
Energy-Saver menubar drop-down menu? If they believe their customers are that
stupid display a dialog box warning them, with the option to never show it
again.

~~~
daniel02216
You can use a Macbook in closed-lid mode to use only an external display.
Also, if you open the lid afterwards, you can hit 'detect displays' to wake up
the internal display. No reconnecting necessary.

~~~
tuacker
> You can use a Macbook in closed-lid mode to use only an external display.

Yes, but this requires an external keyboard, a connected power outlet and
putting the system to sleep.

Thanks about the 'detect displays' button, though still the key for switching
mirror/extend mode should do that without requiring me to go into settings (or
have the menubar item active).

------
lutorm
I also read that having X11 running apparently switches to the discrete GPU.
Now, I have no idea why it would do that (GLX extension?) but that kind of
sucks given that I spend essentially 100% of my time in an xterm. (If
anything, X11 graphics is so slow anyway that I don't see the point of ever
switching to the discrete GPU for its sake.)

Really, Apple needs to fix this. If the application requires < x resources, or
if the frame drawing time is < y, then stick with integrated graphics
regardless of API used.

~~~
chrisbolt
Why run X11 just for an xterm instead of just using Terminal?

------
tlrobinson
AFAIK there's no public API for putting icons in the menu bar, so it's not
surprising that an app doing something hacky causes problems.

~~~
lygaret
<http://tinyurl.com/nsstatusitemguide>

Perfectly legal, documented APIs for adding an NSStatusItem to the global
status bar. I think it changed in Tiger?

------
sid0
_Discrete_ , not _discreet_. I had a lot of trouble parsing that sentence (oh,
so the status bar application has flashy graphics by default and OS X somehow
forces it to have less flashy graphics?) before I realized what the title
meant.

