Sunday, September 14, 2008 9:26 PMEvening all,
I've recently built a new machine and dropped Windows Server 2008 on it. I quite fancied playing around with the Hyper-V technology in the hope of building a complex development environment (VMWare/VPC are good friends of mine!).
Anyway, I do a lot of graphics work and thus need access to the underlying hardware. If I try running Nvidia's Vista X64 drivers they bail out with an "unrecognised device" error. I've installed the integration services/drivers and it currently has "Microsoft Virtual Machine Bus Video Device" as the GPU driver (aka VMBusVideoD.dll / VMBusVideoM.sys).
A couple of months back I was at a Vista Squad event at Microsoft's London office and I'm absolutely sure the evangelist demoing WS'08 and Hyper-V had a Vista image that had the AERO/Glass UI enabled. This suggests to me that a guest OS is capable of accessing the underlying graphics hardware.
Could anyone confirm whether this is or isn't possible?
If I can't get a guest Vista-SP1 image running D3D10 and D3D11 code then this whole setup has to get scrapped :-(
Thanks in advance,
Windows - DirectX MVP
Monday, September 15, 2008 2:04 AMVirtual machines do not use the physical hardware of the host. The use the their own emulated or synthetic devices. The one you describe is the one you have to use. The driver for it is included in the Integration Components for the OS.
Monday, September 15, 2008 5:29 AMModeratorHyper-V graphics are limited to 4 GB of video ram. You won't see Aero glass enabled using Virtual Machine Connection. To see Aero Glass, use Remote Desktop Connection to connect to your virtual machine. If that wasn't clear enough, as I type this I'm looking at Aero Glass working in a Hyper-V virtual machine right now.
Monday, September 15, 2008 10:41 AMBill, John - thanks for the quick answers, much appreciated!
I remember reading some info on the WDDM-over-Remote-Desktop technology, but I hadn't thought to try that out. Presumably that's just a trick to get the DWM to render using the client hardware rather than some obscure stream-from-remote-server type thing.
Thus I would assume that running D3D10/D3D11 code on a Hyper-V hosted Vista guest even via Remote Desktop it still wouldn't have access to the real GPU?
Put more simply, even with Remote Desktop you couldn't play a high-end PC game and expect it to run fully featured and in a performant manner. Correct?
In which case, it looks like Windows Server 2008 and Hyper-V are going bye-bye. Whilst I much prefer it to a VPC/WMWare setup (Server'08 is very snappy as well, which I like) my requirements for D3D10/D3D11 are far greater than my need for virtualization :(
Windows - DirectX MVP
Monday, September 15, 2008 2:18 PMModeratorAh, now to the real question - gaming!
I asked the product team if I could move my gamer teenagers into virtual machines. They told me not to, that the graphics capability wouldn't be there.
As far as DirectX is concerned, I modified my PerformanceTest benchmarking tool to skip the DirectX tests because my Hyper-V virtual machines couldn't do DirectX.
Monday, September 15, 2008 2:29 PMJohn Paul Cook said:
I modified my PerformanceTest benchmarking tool to skip the DirectX tests because my Hyper-V virtual machines couldn't do DirectX.
My new machine gets 5+ in everything except for graphics where it gets around 1.0 :-)
I do the occasional bit of gaming but generally speaking I'm rubbish at them so its not directly a gamer-wants-to-use-virtualization issue, its a multimedia/game-developer-wants-to-do-graphics-programming issue. But thats just me being picky!
Thanks for your reply though - obviously not the answer I really wanted, but at least I've got closure on the issue. Time to eradicate Windows Server and get a client OS back in instead...
Maybe I can run a Vista-SP1 client OS and run Windows Server 2008 with Hyper-V inside of a Virtual PC image running on Vista.... it'd be just like eXistenZ.
Windows - DirectX MVP
Tuesday, October 28, 2008 6:18 PMJack, This is great news - the Aero Glass is good enough (no games here) for what I want to do and I am going to start testing this on my 2008 server. Can you think of any specific hyper-v setting or requirements for virtual Vista machines?
Tuesday, October 28, 2008 11:51 PMModeratorJust make sure your Hyper-V is updated to RTM before creating your Vista vm. After creating the vm, install Integration Services. Within the vm, configure it to allow Remote Desktop Connection. Connect to it using Remote Desktop Connection to get the Aero experience.