JDK-8169592 : Java still forcing discrete (high-performance) GPU
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 8,9
  • Priority: P4
  • Status: Closed
  • Resolution: Not an Issue
  • OS: os_x
  • CPU: x86
  • Submitted: 2016-11-02
  • Updated: 2017-12-30
  • Resolved: 2017-12-02
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
tbd_majorResolved
Related Reports
Duplicate :  
Description
FULL PRODUCT VERSION :
java version "9-ea"
Java(TM) SE Runtime Environment (build 9-ea+142)
Java HotSpot(TM) 64-Bit Server VM (build 9-ea+142, mixed mode)


java version "1.8.0_112"
Java(TM) SE Runtime Environment (build 1.8.0_112-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.112-b16, mixed mode)

ADDITIONAL OS VERSION INFORMATION :
10.11.6 (El Capitan)

A DESCRIPTION OF THE PROBLEM :
Launching a Java application should not automatically select the high-performance GPU under OS X.
The problem is observable under 8u112 and 9ea-b142.
Related report is JDK-8041900 which does not seem fixed.


STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
1. Start jvisualvm
2. Note that the system switches to the discrete GPU (can observe using gfxStatus or by starting Activity Monitor and looking at Energy->Graphics Card)

EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
The integrated GPU should be used
ACTUAL -
The high-performance GPU is used.

REPRODUCIBILITY :
This bug can be reproduced always.


Comments
We can use integrated video cards only when jdk is bundled with application(you can use java packager for this) and NSSupportsAutomaticGraphicsSwitching is added to the plist.info. We use discrete video card in all other cases, this is an OSX limitation. https://developer.apple.com/library/content/qa/qa1734/_index.html
02-12-2017

( https://github.com/arduino/Arduino/issues/3210 ) ... seems someone thought this was fixed for >= 8u92 and (https://bugs.openjdk.java.net/browse/JDK-8041900)
16-11-2016

It is possible that this is not a bug, because we can use integrated video cards only when the jdk is bundled with application(you can use java packager for this) and NSSupportsAutomaticGraphicsSwitching is added to the plist.info. We use discrete video card in all other cases, this is an OSX limitation. https://developer.apple.com/library/content/qa/qa1734/_index.html I will check that we work as expected and will close the bug.
16-11-2016

Does it affect 9? Please update Affects Version in JBS.
16-11-2016

Pending evaluation
15-11-2016