Giter VIP home page Giter VIP logo

Comments (26)

gabrielrinaldi avatar gabrielrinaldi commented on August 11, 2024

That is exactly my issue :)

from gfxcardstatus.

codykrieger avatar codykrieger commented on August 11, 2024

I'll work on getting this fixed quick-ish, then. I have some downtime this week.

from gfxcardstatus.

sammargh avatar sammargh commented on August 11, 2024

Any update on this? Was wondering what was going on and it appears an issue is already reported

from gfxcardstatus.

sammargh avatar sammargh commented on August 11, 2024

I don't know if this is useful for you but I've been playing around on lion and have found that the discreet gpu diode registers as -128C when it is disabled. You could use iokit to monitor the gpu diode when the computer is supposed to force integrated and if it doesn't register as -128C send a call to switch over. I've found switching your program to dynamic and back gets the macbook back into integrated graphics.

It seems after an app launches the application notices the state change but then defaults to discreet only internally. When I check after a switch gfxcardstatus will have Discreet Only checked.

Launching a quicktime movie:

Jun 7 22:58:10: --- last message repeated 1 time ---
Jun 7 22:58:10 sammarghs-MacBook-Pro gfxCardStatus[322]: The following notification has been triggered:
NSConcreteNotification 0x10028ce20 {name = NSApplicationDidChangeScreenParametersNotification; object = <NSApplication: 0x1026013e0>}
Jun 7 22:58:10 sammarghs-MacBook-Pro gfxCardStatus[322]: getMuxState was successful (count=1, value=0x00000001).
Jun 7 22:58:10 sammarghs-MacBook-Pro gfxCardStatus[322]: Updating status...
Jun 7 22:58:10 sammarghs-MacBook-Pro gfxCardStatus[322]: Intel HD Graphics 3000 in use. Sweet deal! More battery life.
Jun 7 22:58:12 sammarghs-MacBook-Pro gfxCardStatus[322]: getMuxState was successful (count=1, value=0x00000000).
Jun 7 22:58:12 sammarghs-MacBook-Pro gfxCardStatus[322]: Inconsistent menu state and active card, forcing retry
Jun 7 22:58:12 sammarghs-MacBook-Pro gfxCardStatus[322]: Writing preferences to disk
Jun 7 22:58:12 sammarghs-MacBook-Pro gfxCardStatus[322]: Successfully wrote preferences to disk.

Wait for the switch to happen and then re-check integrated graphics which brings it back:
Jun 7 23:00:38 sammarghs-MacBook-Pro gfxCardStatus[322]: Setting Integrated only...
Jun 7 23:00:38 sammarghs-MacBook-Pro gfxCardStatus[322]: setMuxState was successful.
Jun 7 23:00:39: --- last message repeated 1 time ---
Jun 7 23:00:39 sammarghs-MacBook-Pro gfxCardStatus[322]: getMuxState was successful (count=1, value=0x00000000).
Jun 7 23:00:39 sammarghs-MacBook-Pro gfxCardStatus[322]: setMuxState was successful.
Jun 7 23:00:39 sammarghs-MacBook-Pro gfxCardStatus[322]: The following notification has been triggered:
NSConcreteNotification 0x100229160 {name = NSApplicationDidChangeScreenParametersNotification; object = <NSApplication: 0x1026013e0>}
Jun 7 23:00:39 sammarghs-MacBook-Pro gfxCardStatus[322]: getMuxState was successful (count=1, value=0x00000000).
Jun 7 23:00:39 sammarghs-MacBook-Pro gfxCardStatus[322]: Updating status...
Jun 7 23:00:39 sammarghs-MacBook-Pro gfxCardStatus[322]: Preventing switch to Discrete GPU. Setting canPreventSwitch to NO so that this doesn't get stuck in a loop, changing in 5 seconds...
Jun 7 23:00:41 sammarghs-MacBook-Pro gfxCardStatus[322]: getMuxState was successful (count=1, value=0x00000000).
Jun 7 23:00:41 sammarghs-MacBook-Pro gfxCardStatus[322]: Writing preferences to disk
Jun 7 23:00:41 sammarghs-MacBook-Pro gfxCardStatus[322]: Successfully wrote preferences to disk.
Jun 7 23:00:44 sammarghs-MacBook-Pro gfxCardStatus[322]: getMuxState was successful (count=1, value=0x00000000).
Jun 7 23:00:44 sammarghs-MacBook-Pro gfxCardStatus[322]: Can prevent switching again.
Jun 7 23:00:44 sammarghs-MacBook-Pro gfxCardStatus[322]: Writing preferences to disk
Jun 7 23:00:44 sammarghs-MacBook-Pro gfxCardStatus[322]: Successfully wrote preferences to disk.

from gfxcardstatus.

codykrieger avatar codykrieger commented on August 11, 2024

Due to some recent changes I've had with respect to my employment, I can't update gfxCardStatus at will, unfortunately. I have to go through a rather large approval process to get cleared to work on it again. That being said, after I do that, I should be free to at least take a better look at this. It's frustrating me as well, because I'm using Lion on a daily basis.

My only concern with hard coding the -128C thing into gfxCardStatus is if that changes, or is different depending on MBP model, then that creates a whole host of other situations I have to watch out for. Notifications are definitely the right way to do this, so long as a different one exists that gets sent after the GPU has actually switched.

from gfxcardstatus.

sammargh avatar sammargh commented on August 11, 2024

Yeah I figured as much. I've been reading over the lion api documentation and it doesn't indicate any changes.

One thing I have noticed is that there have been a lot of reports of the Intel driver being extremely buggy which leads me to wonder if Apple intentionally modified this for the preview to force computers to not use the driver for now. I'm going to take a look at the private apis later today and see if I can find anything in the notification system there.

from gfxcardstatus.

codykrieger avatar codykrieger commented on August 11, 2024

Right on, please do let me know if you find out anything interesting.

from gfxcardstatus.

codykrieger avatar codykrieger commented on August 11, 2024

I've refactored about 80% of the codebase in the past couple days, and fixed the vast majority of Lion issues along the way. If you're building from source you should see these fixes. If not, I'm going to put out a beta soon-ish.

from gfxcardstatus.

codykrieger avatar codykrieger commented on August 11, 2024

For documentation purposes, fixed this by using CGDisplayRegisterReconfigurationCallback() instead of NSApplicationDidChangeScreenParametersNotification, as well as a little teensy bit of waiting in between each configuration callback. Need to test this on a wider scale to see if it ever hiccups a bit, in which case I'll need to increase the delay between callbacks (via putting the callbacks in an async queue and sleeping the thread for a larger fraction of a second).

from gfxcardstatus.

sammargh avatar sammargh commented on August 11, 2024

I tried it last night before your latest commits and it still seemed to be buggy. I'll try it out again today and see how it goes. However, it did properly identify that it was using integrated or amd instead of just discreet or integrated.

from gfxcardstatus.

sammargh avatar sammargh commented on August 11, 2024

This is with a 2011 MBP:
Jun 24 08:26:35 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1849]: -[gfxCardStatusAppDelegate updateMenu] Updating status...
Jun 24 08:26:38 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1849]: -[gfxCardStatusAppDelegate setMode:] Setting dynamic switching...
Jun 24 08:26:39 Samuel-Bowlings-MacBook-Pro Finder[150]: kCGErrorIllegalArgument: CGSGetDisplayAliasList: Invalid display 0x41dc9d00
Jun 24 08:26:39: --- last message repeated 1 time ---
Jun 24 08:26:39 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1849]: __DisplayReconfigurationCallback_block_invoke_1 Has the gpu changed? Let's find out!
Jun 24 08:26:39 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1849]: __DisplayReconfigurationCallback_block_invoke_1 nowIsUsingIntegrated (current): 1, _usingIntegrated (previous): 1
Jun 24 08:26:39 Samuel-Bowlings-MacBook-Pro Finder[150]: kCGErrorIllegalArgument: CGSGetDisplayAliasList: Invalid display 0x41dc9d00
Jun 24 08:26:39: --- last message repeated 1 time ---
Jun 24 08:26:39 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1849]: __DisplayReconfigurationCallback_block_invoke_1 Has the gpu changed? Let's find out!
Jun 24 08:26:39 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1849]: __DisplayReconfigurationCallback_block_invoke_1 nowIsUsingIntegrated (current): 1, _usingIntegrated (previous): 1

from gfxcardstatus.

codykrieger avatar codykrieger commented on August 11, 2024

What exactly were you trying to do around the time this log was recorded?

from gfxcardstatus.

sammargh avatar sammargh commented on August 11, 2024

I had set gfxCardStatus to Integrated, verified it was on it and then set it to Dynamic. Upon doing that I launched a few apps in Lion I know cause the card to switch such as System Update and Mail. After the update I checked the logs and that is what came out. Would you like me to try some other cases to see what the logs say? If so please tell me some scenarios and I'll grab the logs for you.

from gfxcardstatus.

codykrieger avatar codykrieger commented on August 11, 2024

That's really weird - I've been running Mail and Software Update on Dynamic Switching since the first dev preview and I've never seen either of those switch GPUs. When have you seen them switch?

I know any of the following most definitely trigger a switch:

  • Sparrow
  • Twitter for Mac
  • Twitterrific
  • Pixelmator (once you've opened an image)
  • Photoshop (once you've opened an image)
  • DaisyDisk
  • Chrome (after opening a webpage with Flash)

I've tried it with all of those so far and gfxCardStatus accurately reflects the change. If you could try with one or more of those that would be awesome. Twitter for Mac is the easiest to test with.

from gfxcardstatus.

sammargh avatar sammargh commented on August 11, 2024

I had gfxcardstatus set to Dynamic, closed the app, downloaded twitter from the app store and then launched gfxcardstatus and then twitter. Here are the logs:
Jun 25 00:03:28 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: -[PrefsController init] Initializing PrefsController
Jun 25 00:03:28 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: -[PrefsController setUpPreferences] Loading preferences and defaults
Jun 25 00:03:28 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: -[PrefsController loadAtStartup:] Already exists in startup items
Jun 25 00:03:28 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: +[MuxMagic switcherOpen] Driver connection opened.
Jun 25 00:03:28 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: -[gfxCardStatusAppDelegate applicationDidFinishLaunching:] Fetched machine profile: {
discreteString = "AMD Radeon HD 6750M";
integratedString = "Intel HD Graphics 3000";
legacy = 0;
unsupported = 0;
usingIntegrated = 1;
}
Jun 25 00:03:28 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: -[gfxCardStatusAppDelegate updateMenu] Updating status...
Jun 25 00:03:28 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: -[gfxCardStatusAppDelegate applicationDidFinishLaunching:] Restoring last used mode (2)...
Jun 25 00:03:28 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: -[gfxCardStatusAppDelegate powerSourceChanged:] Power source changed: -1 => 0 (AC Adapter)
Jun 25 00:03:28 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: -[gfxCardStatusAppDelegate updateMenu] Updating status...
Jun 25 00:03:37 Samuel-Bowlings-MacBook-Pro Twitter[1959]: font ChicagoBold loaded
Jun 25 00:03:37 Samuel-Bowlings-MacBook-Pro Twitter[1959]: font pixChicago loaded
Jun 25 00:03:37 Samuel-Bowlings-MacBook-Pro Twitter[1959]: *** -[NSKeyedUnarchiver initForReadingWithData:]: data is NULL
Jun 25 00:03:46 Samuel-Bowlings-MacBook-Pro Twitter[1959]: Error: no oAuthTokenSecret set for account
Jun 25 00:03:47 Samuel-Bowlings-MacBook-Pro Finder[150]: kCGErrorIllegalArgument: CGSGetDisplayAliasList: Invalid display 0x41dc9d00
Jun 25 00:03:47: --- last message repeated 1 time ---
Jun 25 00:03:47 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: __DisplayReconfigurationCallback_block_invoke_1 Has the gpu changed? Let's find out!
Jun 25 00:03:47 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: __DisplayReconfigurationCallback_block_invoke_1 nowIsUsingIntegrated (current): 0, _usingIntegrated (previous): 1
Jun 25 00:03:47 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: -[gfxCardStatusAppDelegate updateMenu] Updating status...
Jun 25 00:03:47 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: -[gfxCardStatusAppDelegate updateProcessList] Updating process list...

from gfxcardstatus.

sammargh avatar sammargh commented on August 11, 2024

And here is launching twitter with integrated only:

[gfxCardStatusAppDelegate setMode:] Setting Integrated only...
Jun 25 00:10:09 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: setMuxState setMuxState returned 0xe00002bc.
Jun 25 00:10:09 Samuel-Bowlings-MacBook-Pro Finder[150]: kCGErrorIllegalArgument: CGSGetDisplayAliasList: Invalid display 0x41dc9d00
Jun 25 00:10:11: --- last message repeated 3 times ---
Jun 25 00:10:11 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: __DisplayReconfigurationCallback_block_invoke_1 Has the gpu changed? Let's find out!
Jun 25 00:10:11 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: __DisplayReconfigurationCallback_block_invoke_1 nowIsUsingIntegrated (current): 1, _usingIntegrated (previous): 1
Jun 25 00:10:11 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: __DisplayReconfigurationCallback_block_invoke_1 Has the gpu changed? Let's find out!
Jun 25 00:10:11 Samuel-Bowlings-MacBook-Pro gfxCardStatus[1955]: __DisplayReconfigurationCallback_block_invoke_1 nowIsUsingIntegrated (current): 1, _usingIntegrated (previous): 1
Jun 25 00:10:19 Samuel-Bowlings-MacBook-Pro Twitter[2154]: font ChicagoBold loaded
Jun 25 00:10:19 Samuel-Bowlings-MacBook-Pro Twitter[2154]: font pixChicago loaded
Jun 25 00:10:19 Samuel-Bowlings-MacBook-Pro Twitter[2154]: could not fetch oAuthTokenSecret, this account will get removed

Nothing after that

from gfxcardstatus.

codykrieger avatar codykrieger commented on August 11, 2024

Everything in the logs looks good - was it accurately reflecting the switch in the menu bar and with Growl (if you have it installed)?

from gfxcardstatus.

sammargh avatar sammargh commented on August 11, 2024

I don't have growl but it didn't seem to actually be switching, the CPU temp was still at around 69C when it was on integrated when in Snow Leopard it usually goes down to around 45C when running on integrated graphics.

from gfxcardstatus.

sammargh avatar sammargh commented on August 11, 2024

I guess it was just slow to cool down.. I've been playing with it all morning and it appears to be correctly enforcing integrated only.

from gfxcardstatus.

codykrieger avatar codykrieger commented on August 11, 2024

The switching stuff has worked without modification - the only thing I really had to modify for Lion support was the method of notification used to determine when the GPU has changed. So it should definitely be enforcing everything correctly. What wasn't working was the detection and display of the current GPU - most of the time it was the complete opposite of what was shown in the menu bar (and menu item) after the machine had switched once or twice.

from gfxcardstatus.

codykrieger avatar codykrieger commented on August 11, 2024

Closing since this should all be fixed in the latest builds. Final update almost ready.

from gfxcardstatus.

jakecarlson avatar jakecarlson commented on August 11, 2024

I am unable to switch to integrated GPU on OS X Lion. I had been doing so in Snow Leopard to avoid an issue with my MBP 2011 conflicting with iTunes/Quicktime. Any ideas?

from gfxcardstatus.

jakecarlson avatar jakecarlson commented on August 11, 2024

Ah! I can change to integrated only when not plugged in to my Cinema Display. On Snow Leopard, it allowed me to and just shut off the display. On Lion, it automatically forces use of the discrete GPU when plugged into an external display.

from gfxcardstatus.

codykrieger avatar codykrieger commented on August 11, 2024

Really? I was never able to switch while I had an external display plugged in -- even in Snow Leopard. Then again, I don't have a 2011 MBP...could be something new with the driver or hardware.

from gfxcardstatus.

jakecarlson avatar jakecarlson commented on August 11, 2024

Yep, must have been. I have had problems from day one with my MBP 2011 with iTunes freezing it up. Does the same thing in Lion. Must be a hardware issue. But yes, I could leave the external display plugged in and switch to integrated graphics in Snow Leopard. The external would just turn off. Not sure if that is how it is supposed to work or if it's because I may have a defective GPU. In any case, it's great now that I know to unplug to go to integrated mode. Thank you so much for this great utility!

from gfxcardstatus.

codykrieger avatar codykrieger commented on August 11, 2024

Sure thing! :)

On Friday, July 29, 2011 at 12:46 AM, JakeCarlson wrote:

Yep, must have been. I have had problems from day one with my MBP 2011 with iTunes freezing it up. Does the same thing in Lion. Must be a hardware issue. But yes, I could leave the external display plugged in and switch to integrated graphics in Snow Leopard. The external would just turn off. Not sure if that is how it is supposed to work or if it's because I may have a defective GPU. In any case, it's great now that I know to unplug to go to integrated mode. Thank you so much for this great utility!

Reply to this email directly or view it on GitHub:
#41 (comment)

from gfxcardstatus.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.