Re: Nvidia support for Xen
I think it might be quite tricky to get a 3D accelerated Windows
OS runnig in a user domain. There are a number of variants:
1. Dedicated (second) PCIe graphics card for domU
AFAIK, you need to have a Xen-aware driver for paravirtualisized
kernels, but from what i understand, an IOMMU should be capable
of hiding the virtualization so that even an unmodified driver should
work in domU in a VT environment, but from what i know, nobody
yet succeeded tu run an unmodified driver. Anyway, such a solution
has quite some disadventages: you need a second graphics card and
you need a KVM switch or a Framegrabber for redirecting the video
output to the LCD attached to the Linux graphics card. Alternativly,
it might be possible to add a simple windows driver that constantly
streams the visible framebuffer of the Windows graphics card to
the Linux graphics card (even at 1600x1200@32, the bandwidth is
below 500MB/sec, which shouldn't be a big issue if both cards are PCIe).
So this should basically be the simplest solution, but not realy the most
2. X/GLX Windows graphics driver
A "fairly simple approach" would be to implement a Windows
graphics driver that uses the X/GLX protocol to "remotely"
draw the screen content on the graphics card that is under
control of dom0. However, the implementation effort is quite
hugh (but somewhat straight forward) and networked GLX typically
imposes quite some performance drop. Such a driver could also
be used to redirect the screen-content of windows boxes to
plain X-Terminals, so there is a small chance that such a beast
already exists (however, couldn't quickly find anything on Google
on that topic).
3. Windows graphics driver as OpenGL-client on dom0
In this variant, the Windows graphics driver in domU is allowed
to run in process context in dom0. I guess this would be *very*
tricky to implement, but it might be feasible to even pass through
D3D DMA streams, so that there is no recognizable performance loss.