Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Hey bitninja, ah,

I'm a bit confused. I'm trying this out and it feels like the switch isn't really happening when I choose to switch from Nvida to Intel. I'm running Keynote which is the only dependent process. When I switch from N to I, battery life doesn't improve (it's around 3:30 with ~95%). If I am on N and I quit Keynote, and the system switches on its own back to I, battery life goes up to 6:00+. It feels like the switch doesn't actually happen when I force it - only when I quit Keynote.

Weird?
 
waffles123: Can you try again?

By the way, I'm a 99% sure that the GPU switching in the new MBPs is software based and not a magical hardware solution.

I opened it and I don't see anything new in Energy Saver. Here is a pic:
Screen%20shot%202010-05-08%20at%209.58.12%20PM.png


When I check "Higher Performance", it requires me to log off.

Thanks for your help
 
Try this:

- Unzip fast_switch.zip and move fast_switch.app to Applications folder
- Click fast_switch.app
- A small icon will appear at the menu bar. Click to open the menu and choose Switch CPUs:

screenshot.png

The icon will change from 9400 to 9600 and vice-versa.
 
Hey bitninja, ah,

I'm a bit confused. I'm trying this out and it feels like the switch isn't really happening when I choose to switch from Nvida to Intel. I'm running Keynote which is the only dependent process. When I switch from N to I, battery life doesn't improve (it's around 3:30 with ~95%). If I am on N and I quit Keynote, and the system switches on its own back to I, battery life goes up to 6:00+. It feels like the switch doesn't actually happen when I force it - only when I quit Keynote.

Weird?

Yes, it can't move an already running application to another gpu. If you switch while something using the gpu is running this application keeps running on that gpu until you quit it. It also results in a bit worse performance.
There's not a lot we can do about this, as all the switcher does at the moment is telling the driver to switch gpus and thats the way apple implemented the switch.
And of course the second gpu keeps powered on until all applications using it quit.
 
Yes, it can't move an already running application to another gpu. If you switch while something using the gpu is running this application keeps running on that gpu until you quit it. It also results in a bit worse performance.
There's not a lot we can do about this, as all the switcher does at the moment is telling the driver to switch gpus and thats the way apple implemented the switch.
And of course the second gpu keeps powered on until all applications using it quit.

Ah, that makes a lot of sense. So, if I quit all the dependent apps, use the gfx app to force the switch, then fire up one of the apps, it will stay on Intel? That's how I should be using it?

If that's the case, Cody, perhaps the gfx app should not let me choose to switch to the Intel when there are dependent processes, only if there are none?
 
If that's the case, Cody, perhaps the gfx app should not let me choose to switch to the Intel when there are dependent processes, only if there are none?

Agreed; or perhaps indicate somewhere that despite having chosen to switch the GPU, 2 GPUs are actually in use and can be remedied by closing the dependent app.
 
I added the capability to force Intel, force nvidia, or enable dynamic switching. Feel free to take what I did and make an official version 1.7.

I can confirm that it works perfectly.

Selecting Intel HD obviously disables the dual screen.

Using OpenMark gives an idea of how slow the Intel HD is compared to the 330M. :eek:
 

Attachments

  • Screen shot 2010-05-09 at ??11.49.15.png
    Screen shot 2010-05-09 at ??11.49.15.png
    46.2 KB · Views: 127
  • Screen shot 2010-05-09 at ??11.50.24.png
    Screen shot 2010-05-09 at ??11.50.24.png
    43.5 KB · Views: 91
Yes, it can't move an already running application to another gpu. If you switch while something using the gpu is running this application keeps running on that gpu until you quit it. It also results in a bit worse performance.
There's not a lot we can do about this, as all the switcher does at the moment is telling the driver to switch gpus and thats the way apple implemented the switch.
And of course the second gpu keeps powered on until all applications using it quit.

The NVIDIA gpu seems to shut off when I force a swap to intel (using the alwaysIntel function in your new code) when Google Chrome and Google Chrome Helper are dependent processes (i.e., when watching flash video on youtube). According to IORegistryExplorer, peg-surface-list has no surfaces, and iStatMenus shows the NVIDIA gpu as using 0 watts. How are you determining the NVIDIA gpu is still active? Perhaps the NVIDIA gpu will remain active under certain circumstances?

Even still, if the NVIDIA gpu does remain active until all dependent processes are quit, users could just set their preference for Intel Only in gfxCardStatus before launching any apps.

On a side note, I have been using the build of gfxCardStatus that I made using your updated code all day today (forcing intel, forcing nvidia, enabling dynamic switching), and haven't had any issues.
 
In a couple of my recent posts I mentioned the peculiarity of battery runtime going down when switching to the Intel GPU. But in light of posts from others today and most of all, ah-, pointing out that 2 GPUs can actually be in use despite selecting to use only one and that it can be remedied by quitting the dependent program(s), I tested the battery again.

I previously tested with Chrome open. When selecting Intel, battery runtime went down as much as half an hour. This time I tested without Chrome or any Nvidia-dependent app running (Cinch, in my case), and when on Intel, runtime went up by about an hour. All's well.
 
ahaha Cody is a celebrity. We should have gotten his autograph before he went Hollywood

Haha, if you want I can still sign something! :p

rrr said:
I just installed this app today for the first time (v1.6.1), and I too am always seeing N. It doesn't appear that Intel is ever in use, even when Dependent Processes says "None".

Is this an issue with gfxCardStattus, or with my MBP?

Hi rrr, can you please list your startup items? Do you have an external display plugged in? Thanks!

willyrc said:
Hello guys,

I took the risk and tried Cody's source code in my late '08 MBP.

I'm able to switch between the 9400M and 9600GT cards successfully

The original gfxCardStatus application does not contain the strings necessary to detect which GPU is active, so I'm attaching a modified version of the application with the correct GPU names. I'm calling it "fast_switch".

Nice work! I'll try to merge this functionality into the next official build. :)

yonajon said:
Ah, that makes a lot of sense. So, if I quit all the dependent apps, use the gfx app to force the switch, then fire up one of the apps, it will stay on Intel? That's how I should be using it?

If that's the case, Cody, perhaps the gfx app should not let me choose to switch to the Intel when there are dependent processes, only if there are none?

Possibly - it's worth looking into. I'd hope that switching apps dynamically over to another GPU is possible, seeing as how apps can switch from integrated to the 330M on Apple's command.

ksmith173 said:
The NVIDIA gpu seems to shut off when I force a swap to intel (using the alwaysIntel function in your new code) when Google Chrome and Google Chrome Helper are dependent processes (i.e., when watching flash video on youtube). According to IORegistryExplorer, peg-surface-list has no surfaces, and iStatMenus shows the NVIDIA gpu as using 0 watts. How are you determining the NVIDIA gpu is still active? Perhaps the NVIDIA gpu will remain active under certain circumstances?

Even still, if the NVIDIA gpu does remain active until all dependent processes are quit, users could just set their preference for Intel Only in gfxCardStatus before launching any apps.

On a side note, I have been using the build of gfxCardStatus that I made using your updated code all day today (forcing intel, forcing nvidia, enabling dynamic switching), and haven't had any issues.

Good to know. I'm going to test this stuff out as soon as I can (super busy at the moment).

Libertine Lush said:
In a couple of my recent posts I mentioned the peculiarity of battery runtime going down when switching to the Intel GPU. But in light of posts from others today and most of all, ah-, pointing out that 2 GPUs can actually be in use despite selecting to use only one and that it can be remedied by quitting the dependent program(s), I tested the battery again.

I previously tested with Chrome open. When selecting Intel, battery runtime went down as much as half an hour. This time I tested without Chrome or any Nvidia-dependent app running (Cinch, in my case), and when on Intel, runtime went up by about an hour. All's well.

Thanks for retesting - this helps narrow things down a bit.
 
just got my hands on my mbp i7/hr ag. gfxcardstatus is the only app worthy of my finder menu :)
 
Wait, how does this differ from another users app called "GPUInfoMenu"?

cleaner, better looking
more active development
can force a switch between cards
open source

don't get me wrong. i don't want to start some kind of flame war, i don't mean to put down developers. i'm one myself.

just go with what one you like better
 
Wait, how does this differ from another users app called "GPUInfoMenu"?

gfxCardStatus was around first, subscribes to the Apple-esque minimalism philosophy, and also allows you to switch GPUs on demand. Plus it has Growl support and uses cleaner icons for indicators of which GPU is in use. Huge difference. :)

a4209797 said:
cleaner, better looking
more active development
open source

And that :)
 
gfxCardStatus was around first, subscribes to the Apple-esque minimalism philosophy, and also allows you to switch GPUs on demand. Plus it has Growl support and uses cleaner icons for indicators of which GPU is in use. Huge difference. :)



And that :)

Im into that, downlading now : )
 
You've made the right decision! Let us know what you think. :D

Cody

Ok so, if I manually switch the gpu to intel, does it stay intel even if I open up an app that would generally use the nvidia? Thats what it seems like so far, either that or it isnt working.

If so, I love it : )
 
Try this:

- Unzip fast_switch.zip and move fast_switch.app to Applications folder
- Click fast_switch.app
- A small icon will appear at the menu bar. Click to open the menu and choose Switch CPUs:

View attachment 225521

The icon will change from 9400 to 9600 and vice-versa.

Hey willy - submit the changes you made (or make a fork) on GitHub whenever you get around to it and I'll merge them into the main project. Thanks!
 
Ok so, if I manually switch the gpu to intel, does it stay intel even if I open up an app that would generally use the nvidia? Thats what it seems like so far, either that or it isnt working.

If so, I love it : )

The answer to that is...it depends. With the release of v1.7 (soon), it will work as you described. Currently, in the main project (v1.6.1), it's a little more finicky, but it should do that for the most part. We're still working out some of the kinks. But you can still love it! :D
 
The answer to that is...it depends. With the release of v1.7 (soon), it will work as you described. Currently, in the main project (v1.6.1), it's a little more finicky, but it should do that for the most part. We're still working out some of the kinks. But you can still love it! :D

Awesome, will I have to check back here to see when it is updated or will the app notify me? Thanks : )
 
Ah, that'll come in handy.

Is there any way to tell if the CPU is turbo boosted :3 ?
 
Ok so, if I manually switch the gpu to intel, does it stay intel even if I open up an app that would generally use the nvidia? Thats what it seems like so far, either that or it isnt working.

Just keep in mind that it was recently discovered by ah- that if you're using an app like Chrome or have an app in the background running like Cinch that use the Nvidia, when you switch to Intel, the Nvidia will actually still be running. You'll effectively have both GPUs running. So you'll have to close out the programs dependent on the Nvidia too. That's how I understand it.

Oh, I wonder: bitninja, ah-, does this work the other way around? If there are programs dependent on the Intel GPU, would those programs need to be closed too to power down the Intel so both GPUs aren't running? I'm possibly confusing myself.

Awesome, will I have to check back here to see when it is updated or will the app notify me? Thanks : )

There's an auto-update feature in preferences.

Ah, that'll come in handy.

Is there any way to tell if the CPU is turbo boosted :3 ?

Oh, that would be neat. Intel has a widget for this, but it's Windows only. Maybe not a complementary feature with this program, but I sure wouldn't mind.
 
Awsome all the improvements that has exploded here since this first started.
Looking forward to version 7.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.