Opened 9 years ago

Closed 7 years ago

Last modified 7 years ago

#5051 closed Bug (fixed)

Mac client causes dual-GPU Macbook Pros to use the discrete GPU

Reported by: fwny Owned by: livings124
Priority: Normal Milestone: 2.72
Component: Mac Client Version: 2.61
Severity: Normal Keywords:
Cc:

Description

Opening the client causes Macbook Pros with dual graphics to switch to the discrete GPU.

Attachments (1)

Screen Shot 2012-09-25 at 5.56.18 PM.png (141.3 KB) - added by fwny 9 years ago.

Download all attachments as: .zip

Change History (18)

Changed 9 years ago by fwny

comment:1 Changed 9 years ago by livings124

Interesting. Any idea what causes this or why it happens. Shouldn't this be something handled by the operating system?

comment:2 Changed 9 years ago by fwny

I haven't done any non-mobile Mac dev but I am under the impression that the graphics switching is triggered by the use of certain APIs.

This issue is happening on a mid-2012 Macbook Pro Retina if that matters at all.

comment:3 Changed 9 years ago by livings124

I would think this is an operating system issue. Is there a reason that we should force a specific GPU to be used, and a reason why the operating system shouldn't be the one making the decision?

comment:4 Changed 9 years ago by fwny

I think the desirable behaviour is that the application shouldn't be deciding which GPU to use, but it shouldn't be influencing which one to use either (which is the issue).

Transmission is not a graphics intensive app so the switch to the discrete GPU is just a drain on battery life.

comment:5 Changed 9 years ago by fwny

More information on quick reproduction:

Open Transmission Click "Create torrent file" or "Open torrent files" button.

As soon as you click those buttons you will notice the OS swap over to discrete graphics.

comment:6 follow-up: Changed 9 years ago by cfpp2p

fwny

This issue is happening on a mid-2012 Macbook Pro Retina if that matters at all.

I don't use MAC but might #4749 have anything to do with this?

comment:7 in reply to: ↑ 6 Changed 9 years ago by livings124

Replying to cfpp2p:

fwny

This issue is happening on a mid-2012 Macbook Pro Retina if that matters at all.

I don't use MAC but might #4749 have anything to do with this?

Nope, that shouldn't be related.

comment:8 Changed 9 years ago by livings124

http://developer.apple.com/library/mac/#qa/qa1734/_index.html%23//apple_ref/doc/uid/DTS40010791

Still not sure if this is something we should be doing, however. It seems like something the operating system should determine on its own.

comment:9 Changed 9 years ago by fwny

I think the OS lacks the information needed to make the correct decision on this. From that article it seems it bases the decision to switch to discrete graphics entirely from the fact that an OpenGL context has been created. There is no distinction between a high-end game and a small application that just wants to do a window transition animation or something.

Aside from that, I still think the current behaviour is definitely wrong from a user standpoint. The app is causing initialization of expensive, user visible resources that it does not need.

I've added that plist attribute to my own install and it seems to fix the behavior.

comment:10 Changed 9 years ago by livings124

  • Milestone changed from None Set to 2.72
  • Resolution set to fixed
  • Status changed from new to closed
  • Type changed from Bug to Enhancement

Fair enough. I've set this flag in the Info.plist.

comment:11 Changed 7 years ago by maxclimber1w

  • Resolution fixed deleted
  • Status changed from closed to reopened
  • Type changed from Enhancement to Bug
  • Version changed from 2.61 to 2.82

This problem remains in version 2.82, and is now more obvious to end-users because of the changes to Activity Monitor in OS X 10.9.

http://i.imgur.com/1wPZech.png

comment:12 Changed 7 years ago by livings124

What type of machine are you using? We're still setting the flag to support automatic graphics switching, but https://developer.apple.com/library/mac/qa/qa1734/_index.html says that that only works on Macbook Pros from 2011 on. I don't know if there's anything else we can do.

comment:13 Changed 7 years ago by livings124

  • Resolution set to fixed
  • Status changed from reopened to closed

comment:14 Changed 7 years ago by livings124

  • Version changed from 2.82 to 2.61

comment:16 Changed 7 years ago by barbudo

I can confirm the same issue with version 2.83 (14283) running on a i5 MacBook? Pro (mid 2010) with a NVIDIA GeForce? GT 330M 256 MB

Note: See TracTickets for help on using tickets.