Integrated vs. Discrete Graphics on OS X

Mike Hearn mike at
Mon May 25 16:03:45 UTC 2015

I believe the tricky part is not setting the magic flag in your Info.plist
file but rather handling the GL context changes on the fly. It
requires/would require some code in the Mac GL specific part of JavaFX.
Otherwise if you force it to integrated then some other app causes a switch
to discrete, the app might die because its GL surface just vanished.

On Mon, May 25, 2015 at 5:30 PM, Scott Palmer <swpalmer at> wrote:

> I've noticed that it is not possible to run a Java GUI app (Swing or
> JavaFX) on a MacBook Pro without it activating the discrete graphics and
> therefore reducing battery life.
> I believe it is automatically triggered by the use of OpenGL.  Unless you
> explicitly code for the integrated adapter, I don't think you can use
> OpenGL without the discrete adapter kicking in.  It would be nice if
> packaged app bundles done with the javapackager had an entry in the
> Info.plist that would signal that the application does not require the
> discrete adapter.
> This appears to already be filed as a JDK bug at
> but it doesn't look like
> it is getting much attention.  Is it likely to be addressed for 9 or an 8uX
> release?
> Regards,
> Scott

More information about the openjfx-dev mailing list