When the kernel is running, the discrete GPU is enabled automatically and battery life plummets, even though my code uses no CUDA or OpenCL functions. Is it possible to prevent that from happening?

Mathematica 10; 2015 15"-screen Retina MacBook Pro


Use the gfxCardStatus utility to force integrated graphics. This must be done while integrated graphics is in use, i.e. before Mathematica is started.

Sometimes it may be necessary to switch twice before the setting sticks. (The gfxCardStatus author is aware and told me that he has no solution.)

Note: If discrete graphics are in use, it is not possible to force switching back to integrated graphics until you quit all programs that are using the discrete card. The reverse is possible, however, I noticed that sometimes Mathematica will crash a few minutes after the switch. It is best to lock the setting before starting Mathematica, and not toggle it until you're done using it.

Mathematica forces discrete graphics since version 9 (not in version 8). Wolfram is aware of the situation as I reported it in 2012.

  • $\begingroup$ gfxCardStatus is, unfortunately, very buggy. On my machine using it to switch to the iGPU makes the dGPU unavailable until reboot, even if settings change. $\endgroup$
    – oscu0
    Jul 5 '16 at 16:09
  • $\begingroup$ @TonyShiryaev I cannot comment on that. All I can say is that it worked fine for me on both a 2012 and a 2014 model. $\endgroup$
    – Szabolcs
    Jul 5 '16 at 18:43
  • $\begingroup$ Maybe it's a matter of GPU manufacturer? Mine is AMD, 2012 and 2014 both are Nvidia. I guess I'll email the app's author asking if he can reproduce and fix the issue. $\endgroup$
    – oscu0
    Jul 5 '16 at 18:45
  • $\begingroup$ @TonyShiryaev Sounds reasonable. Here's the bug tracker: github.com/codykrieger/gfxCardStatus/issues $\endgroup$
    – Szabolcs
    Jul 5 '16 at 19:15
  • $\begingroup$ For posterity's sake, gfxCardStatus appears to be largely fixed now. Problem solved. $\endgroup$
    – oscu0
    Apr 8 '17 at 10:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.