If you run ADS 14, 15 and 16 on OSX and then look at the Activity Monitor, you will see in the "Energy" tab the column "Requires High Perf GPU" is "Yes" for 15 and 16, but "No" for 14. You modify the Info.plist file for each and add the lines :
<key>NSSupportsAutomaticGraphicsSwitching</key>
<true/>
Testing out different versions, what I found is that ADS 14.0 to ADS 15.0-dev-176, OpenGL was not initialized until it was used in a Chart or Support Information. While in the later 15.0 builds and ADS 16.0 we initialize OpenGL at startup. In ADS 14.0 if you go to Support Information, it will force GPU to Discrete. So, the forced GPU for 14, 15 and 16 will always occur once OpenGL is initialized.
Here is a matrix on the versions and possible differences :
Forces Discrete GPU | ||||||
JavaAppLauncher | Java Version | Java OpenGL (JOGL) | At Startup | After Chart Use | ||
OSX - 14.0 .app | Old Apple Version | none (OS Default) | Version 1.1 | No | Yes | |
OSX - 14.0 Unix | none | none (OS Default) | Version 1.1 | No | Yes | |
OSX - 15.0 .app - Dev-148 | Old Apple Version | none (OS Default) | Version 2.1.5 | No | Yes | |
OSX - 15.0 Unix - Dev-148 | none | none (OS Default) | Version 2.1.5 | No | Yes | |
OSX - 15.0 .app | New Oracle Version | Java 1.7 | Version 2.1.5 | Yes | Yes | |
OSX - 15.0 Unix | none | Java 1.7 | Version 2.1.5 | Yes | Yes | |
OSX - 16.0 .app | New Oracle Version | Java 1.7 | Version 2.1.5 | Yes | Yes | |
OSX - 16.0 Unix | none | Java 1.7 | Version 2.1.5 | Yes | Yes | |
OSX - 17.0 .app - Dev-2 | New Oracle Version | Java 1.8 | Version 2.1.5 | Yes | Yes | |
OSX - 17.0 Unix - Dev-2 | none | Java 1.8 | Version 2.1.5 | Yes | Yes |
You can download and install the application from https://gfx.io/ to monitor the switching of GPUs when ADS is launched and closed.
Here are some links on the topic :
http://stackoverflow.com/questions/12445561/nssupportsautomaticgraphicsswitching-support
https://discussions.apple.com/thread/4889454?start=0&tstart=0
There is an open issue in Java for this bug : https://bugs.openjdk.java.net/browse/JDK-8041900
There is a thread for this issue for IntelliJ : https://youtrack.jetbrains.com/issue/IDEA-119858
Suggested workaround is to use https://gfx.io/ and set use Integrated Only GPU in settings.
Pushed this issue to 20.5 since we currently don't have the hardware to test it.
Pushed this issue to 20.5 since we currently don't have the hardware to test it.
Issue #13175 |
Closed |
Won't Fix |
Resolved |
Completion |
No due date |
No fixed build |
No time estimate |
There is an open issue in Java for this bug : https://bugs.openjdk.java.net/browse/JDK-8041900
There is a thread for this issue for IntelliJ : https://youtrack.jetbrains.com/issue/IDEA-119858
Suggested workaround is to use https://gfx.io/ and set use Integrated Only GPU in settings.