Page 1 of 1

Dynamic switching between Intel & nVidia, gfxCardStatus...

Posted: 20. Dec 2010, 09:36
by tayl3730
I am seeing different performance results when running a WinXP SP3 VM inside a Mac OS 10.6.5 host... using VirtualBox 3.2.12... depending on whether I boot the VM using Intel graphics, or nVidia graphics (using a 2010 MBP). In case you're unfamiliar, Apple made these laptops with ability to switch between integrated Intel graphics or the onboard nVidia graphics hardware...

I'm not sure if this is a problem with gfxCardStatus v1.8.1 (a small OS X program used to switch between graphics hardwares) or Virtualbox necessarily, but when I boot the VM using Intel graphics, and load up an old game inside WinXP, I get very poor frame rates... around 20fps or so... within that same boot of the VM, if I switch my graphics hardware through the host OS (with gfxCardStatus) to nVidia, I still see poor results... low frame rates around the same speed...

However, if I boot the XP VM with nVidia graphics, I get excellent performance under nVidia hardware (game framerate is >100)... switching to Intel graphics makes performance drop (framerates around 30~40)... under this scenario (booted with nVidia), the VM behaves how I would expect... it is able to make use of the hardware switch... switching back and forth between nVidia and Intel gives repeatable expected results...

So the VM can handle the actual switching events between graphics hardware just fine... but it's like it can't see the nVidia hardware if the guest OS isn't booted with it running...

Any thoughts / ideas?? Perhaps this a bug? Or maybe it's a limitation of WinXP during the boot or something?

Re: Dynamic switching between Intel & nVidia, gfxCardStatus...

Posted: 20. Dec 2010, 12:51
by mpack
Why would you expect similar performance from two different sets of hardware and drivers? Why would you even be given the option if the choice didn't matter?

Anyway, a VirtualBox VM will give you lower than native graphics performance, whatever native is. Sometimes it will lower performance below the threshold where you see the loss. This is just a fact of life: don't use a VM if you want native graphics performance.

Re: Dynamic switching between Intel & nVidia, gfxCardStatus...

Posted: 20. Dec 2010, 19:41
by tayl3730
Hi mpack, sorry... perhaps I was a little unclear in my first post... I'm not expecting similar performance between different hardware setups... the fact that I am seeing similar performance depending on the hardware selected at boot-time is what's bothering me... again, when booted with nVidia I see vastly different performance when switching between hardware, this is what I would expect...

I usually run on only Intel graphics since the power draw is much less (if I switch to battery for example)... and virtualize under Intel as well since I'm only using XP for some legacy programs for work (MS Office or other)... I used to be a native PC / XP user so I have old purchased softwares that I still use...

But occasionally, I'd like to fire up an old Win95 game through the XP VM; in such case, it's much more convenient for me to simply minimize my XP VM window, switch my graphics hardware through Mac OS, then go back to WinXP and do whatever I need to do which requires higher graphics performance... instead, I must shut down the VM and reboot it, ensuring that nVidia hardware is selected... I guess it's not a major problem, it's just a hassle for me to always check my graphics hardware is on nVidia before booting the VM.

I understand that I'm not going to get native graphics performance... I'm trying to run old games written in the 90's (Doom, Descent, etc...) which have revamped engines to run on XP. When using the nVidia hardware (and booted with it on), the virtual graphics performance is more than enough to run these programs...