I'm building my new home machine right now and as usual this will be a heavily overloaded workstation that will serve as development and testing machine, file server and game console (plus I'm adding TV cards and multimedia streaming for my home network).

Since these use cases work against each other (file server is unavailable when the machine is used as game console), I'm heavily considering the use of Xen to provide everything at once. Performance shouldn't be an issue in general, but the game console use case definitely requires direct access to a GPU.

Therefore I have several questions:

  • is this feasible in general?
  • is the GPU passthrough usable enough with non-server GPUs?
  • when buying, what technologies should I look for on the motherboard (most likely choosing Gigabyte + Intel CPU again)
  • is there some virtualization technology creeping on the horizon that is worth waiting for?
  • how good is Xen at dividing resources?
    • the file-server and multimedia-streaming portion of the workstation has to work even if the game console part is eating 100% of its resources and vice-versa
  • the system will run on top of 8 disks with software Raid6 and LVM, should I buy a dedicated disk for the game console portion of the system?
    • I have read about some problem with Xen and I/O performance

Any input will be greatly appreciated.

P.S. I won't mind using other technology then Xen, but I'm unaware of any other virtualization platform that supports GPU passthrough.

link|improve this question

50% accept rate
Why would gaming block the file server? Games won't use all the cores, and Windows 7 can manage the multitasking just fine. – Martin May 20 '11 at 10:45
@Martin Because I don't use Windows as a fileserver. I'm not that crazy :-D Fileserver + Multimedia streaming is done in Linux. – Let_Me_Be May 20 '11 at 10:47
feedback

3 Answers

Is this feasible in general?

Yes. I have rencently performed Xen VGA passthrough and it worked fine. Take a look at the following video: http://www.youtube.com/watch?v=Gtmwnx-k2qg

Is the GPU passthrough usable enough with non-server GPUs?

Yes and no. Officially, only NVDIA Quadro FX 3800, 4800 and 5800 are supported, but I've successfully used a NVIDIA GeForce GTX 460 as in the previous video and Teo En Ming used a GeForce 8400 GS. It really depends on the graphic card.

When buying, what technologies should I look for on the motherboard (most likely choosing Gigabyte + Intel CPU again)

You should make sure the chipset support I/O MMU (AMD-Vi/VT-d), that the CPU support AMD-V/VT-x and that the graphic card support function level reset (FLR).

Note that this technique is not yet mature and it is not guaranteed to work until you try it!

link|improve this answer
feedback

The critical part in your setup is 3D performance.

I've worked quite a bit with Xen 2-3 years ago - resource allocation worked fine back then and I'm sure that the technology has improved since. Everything but gaming either uses very few resources (file serving, streaming...) or isn't real-time critical (compiling on the dev system, etc).

I havn't done GPU passthrough, but cursory googling doesn't indicate that it works reliably, tweaking is required. Basically, it won't be plug&play - you are pretty much guaranteed that a few/some/many games won't work.

The most reliable option IMHO would be to use Win7 as a host and for games, and run the other services as virtual machines via VirtualPC or VirtualBox. Its not the most elegant solution (everything depends on Windows, every reboot means stopping all the VMs, etc.), but if you want gaming that Just Works, thats the way to go (other than using a second computer).

link|improve this answer
feedback

Depending on the games you want to run, a better option may be to use Wine on top of Linux: check out the Wine Application Database, plus there are commercial versions of Wine that may provide better compatibility. You don't even need a Windows license.

In a way, Wine provides GPU pass-through, but it's at the Windows API level rather than at the PCI level. 3D performance is often comparable between Windows and Linux+Wine.

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.