RFR: 8251854: [macosx] Java forces the use of discrete GPU
Erik Joelsson
erikj at openjdk.java.net
Tue Nov 10 13:26:57 UTC 2020
On Tue, 10 Nov 2020 08:19:13 GMT, Sergey Bylokhov <serb at openjdk.org> wrote:
> This is a review request for the bug particularly fixed some time ago:
> https://mail.openjdk.java.net/pipermail/2d-dev/2015-May/005425.html
>
> In that review request it was found that the old fix does not work well in all cases, see:
> https://mail.openjdk.java.net/pipermail/2d-dev/2015-August/005611.html
>
> The current fix updates an embedded plist.info, so the java will not require
> discrete graphics by default, same as for any other applications.
>
> The discrete card will be used:
> 1. If macOS decided to enable it for some reason
> 2. If the java app sets/uses a full-screen window
> 3. If the user disable "automatic graphics switching" in the system preferences
> 4. If an external monitor is connected to the laptop
>
> In other cases, the integrated graphics will be used, which should be fine in most cases since this graphic is used/tested in the mbp 13/etc. This is not only about rendering performance but also about startup performance, on my current new laptop mbp 16 + Cataline 10.15.7 the switching discrete/integrated causes unexpected delays up to 10 seconds.
>
>
> Note that the new "metal" pipeline also does not require discrete graphics.
>
> The documentation for NSSupportsAutomaticGraphicsSwitching:
> https://developer.apple.com/documentation/bundleresources/information_property_list/nssupportsautomaticgraphicsswitching
>
> I'll create a release note after approval.
>
> Performance numbers:
> https://mail.openjdk.java.net/pipermail/2d-dev/2020-August/010979.html
> Old review request:
> https://mail.openjdk.java.net/pipermail/2d-dev/2020-August/010973.html
Change looks ok from a build point of view, but I can't comment on the validity and implications of using this key.
-------------
Marked as reviewed by erikj (Reviewer).
PR: https://git.openjdk.java.net/jdk/pull/1139
More information about the build-dev
mailing list