-
-
Notifications
You must be signed in to change notification settings - Fork 7k
MacOSX: don't switch to the dedicated graphic card #3210
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
#3225 closed because of lack of feedback. Apparently, too few users are affected by the issue |
Actually @ffissore, I think that basically ALL Mac laptop users are affected by this issue, but since 'graphics card switching' is automatic and invisible under OSX, 99% of users can't tell WHY running the Arduino IDE is draining their battery so quickly. (Installing "gfxCardStatus" makes it abundantly clear where the power is going.) I'd like to suggest that we re-merge the fix for this. If you'd like more feedback, I will happily round up a dozen Mac laptop Arduino users and get them to report what they're finding. Please let me know what would help get the patch re-merged and tested for acceptance. Thanks -Mark. |
Actually, using the built-in Activity Monitory, you can see which applications are demanding use of the 'high performance GPU' (which is what also draws much more power). Attached are a couple of screenshots, showing the Arduino IDE sitting 'idle' but still using significant power. Also worth noting that many MacBooks have these dual graphics chips: one energy-efficient one, and one high-performance one. I believe they introduced this hardware first in 2008, and it's still present in the the lastest higher-end MacBook Pros. I'd love to help out all the Arduino developers who are using MacBooks improve their battery life, and let them hack longer between charges. Thank you so much for all your hard work. It's hard to express how fantastic the whole Arduino project and ecosystem is. |
Happy to see you back.
and, below, add row
Does you mac still flag the IDE as requiring a high perf GPU?
|
Even with the "-Dsun.java2d.opengl=false" in the Info.plist, the Arduino IDE app is flagged as requiring the High Performance GPU, as reported by both Activity Monitor and gfxCardStatus. The latest Processing (v2.2.1) is also flagged as requiring the High Perf GPU. |
Unfortunately, this ticket may be relevant: "JDK-8041900 [macosx] Java forces the use of discrete GPU" https://bugs.openjdk.java.net/browse/JDK-8041900 There's a second ticket, linked from that one, that may have some relevant code: "JDK-8132775 Also, I do note that "NSSupportsAutomaticGraphicsSwitching" is present in the Info.plist with a value of true in both the hourly build as well as in 1.6.5. It's looking like we'll need at least the NSSupportsAutomaticGraphicsSwitching AND the java2d.opengl=false ... AND something else, it seems. |
Pretty recent too. I guess we'll just sit and wait for a fix from upstream. |
Thank you for the time and attention, and all your work. When they fix it upstream, we'll hopefully get the right behavior "for free". |
Looks like it is an upstream issue, but I'd like to offer my support in fixing this issue if it persists after the upstream problem has been fixed. This has been a huge problem for all too long. |
It now looks like the upstream issue has been addressed. |
I'd be happy to test this too, it is a big resoure sink to switch to the discrete gpu. |
thank you @kriegsman it seems they've really fixed it. If I get the labels right, fix is in 8u76 which hasn't been released yet. Latest stable jvm is 8u66, latest beta is 8u72. I guess we just have to sit and wait for the fix to be released |
Thanks for the cross-check, and I think I agree with your reading of the labels. I will now resume waiting. |
The current stable jvm from Oracle appears to now be 8u77, which if I read the labels correctly, includes a fix for the GPU-switching issue. I've installed 8u77 as my system jvm, and I just downloaded the latest hourly Arduino IDE build -- and I'm still seeing the switch to the high-power GPU when I launch the Arduino IDE. |
The IDE bundles its own jvm, so the one installed in the system has no effect. If you could provide a link to the changelog reporting that the issue is closed we can update the bundled jvm and have it available in nightly builds! |
Thanks very much @facchinm ... I'm trying to track it down, and I apologize but I'm now I'm a bit confused about which jvm version it is or isn't fixed in. This seems to be the relevant ticket https://bugs.openjdk.java.net/browse/JDK-8041900. Now that I'm reading it again, maybe it's saying that it's fixed in 8u92? If that's the case, then the fix may only be available in the jvm betas, which wouldn't help us here. |
Thanks a lot @kriegsman for the links! It really looks like we need to wait for u92 to be released to inherit the fix... |
Just installed the u92 version. Problem still present... |
+1, issue still valid with 1.6.8 |
but seems to be fixed in 1.6.10: I do not get the "Requires High Perf Graphic" flag anymore in the Activity Monitor. |
Just checked Arduino 1.6.11 on OSX 10.11.6 -- good result: no more "Requires High Perf GPU". |
Closing as fixed |
Does anyone know what was changed to fix it? |
We are now bundling JRE update u92 which contains the fix 😄 |
It looks like the IDE is triggering the more powerful GPU of the two some Macs have installed.
AppBundler supports a flag that disables such switch
https://bitbucket.org/infinitekind/appbundler/pull-request/6/add-support-for/diff
The text was updated successfully, but these errors were encountered: