[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [RFC] XenGT - An Mediated Graphics Passthrough Solution from Intel
> From: Konrad Rzeszutek Wilk [mailto:konrad.wilk@xxxxxxxxxx] > Sent: Tuesday, September 10, 2013 3:28 AM > > On Mon, Sep 09, 2013 at 12:46:23PM +0000, Shan, Haitao wrote: > > Hi, Xen Experts, > > > > This email is aimed at a first time disclosure of project XenGT, which is > > a Graphics virtualization solution based on Xen. > > > > > > > > As you can see, requirements for GPU to be sharable among virtual machines > > have been constantly rising. The targeted usage model might be > > accelerating tasks ranging from gaming, video playback, fancy GUIs, > > high-performance computing (GPU-based). This trend is observed on both > > client and cloud. Efficient GPU virtualization is required to address the > > increasing demands. > > > > > > We have developed XenGT - a prototype based on a mediated passthrough > > architecture. We support running a native graphics driver in multiple VMs > > to achieve high performance. A specific mediator owns the scheduling and > > sharing hardware resources among all the virtual machines. By saying > > mediated pass-through, we actually divide graphics resource to two > > categories: performance critical and others. We partition performance > > critical resources for VM's direct access like pass-through, while save > > and restore others. > > > > > > > > XenGT implements the mediator in dom0, called vgt driver. This avoids > > adding complex device knowledge to Xen, and also permits a more flexible > > release model. In the meantime, we want to have a unified architecture to > > mediate all the VMs, including dom0. Thus, We developed a ³deprivileged² > > dom0 mode, which essentially trapped Dom0's access to selected resources > > (graphics resources in XenGT case) and forwarded to vgt driver (which is > > also in Dom0) for processing. > > But could be in another domain itself - an device driver domain right? definitely. it's just way how it works today. :-) Thanks Kevin > > > > > > Performance critical resources are: > > - Part of the global virtual memory space > > - VM¹s own per-process virtual memory spaces > > - VM¹s own allocated command buffers (actually in graphics memory) > > > > > > Others are: > > - MMIO/PIO > > - PCI configuration registers > > - GTT tables > > - Submission of queued GPU commands > > > > Right now, we support 4 accelerated VMs: Dom0 + 3 HVM DomUs. We've > > conducted verifications based on Ubuntu 12.04 and 13.04. Tests conducted > > in VM include but are not limited to 3D gaming, media playbacks, 2D > > accelerations. > > > > We believe the architecture itself can be general so that different GPUs > > can all use this mediated passthrough concept. However, we only developed > > codes based on Intel 4th Core Processor with integrated Graphics. Note > > that we don't require VT-d to run our solution. > > > > If you have interests in trying, you can refer to the attached setup > > guide, which provides step-to-step details on building/configuring/running > > XenGT. > > > > Source code is made available at github: > > Xen: https://github.com/01org/XenGT-Preview-xen.git > > Linux: https://github.com/01org/XenGT-Preview-kernel.git > > Qemu: https://github.com/01org/XenGT-Preview-qemu.git > > Yeey! Awesome! Thank you for sharing that. > > > > > Any comments are welcome! > > > > > > Special note: We are making this code available to general public since we > > take community's involvement and feedbacks seriously. However, while we've > > tested our solution with various workloads, the code is only at pre-alpha > > stage. Hangs might happen, so please don't try it on the system that > > hosting critical data for you. > > > > Shan Haitao > > > > > > _______________________________________________ > > Xen-devel mailing list > > Xen-devel@xxxxxxxxxxxxx > > http://lists.xen.org/xen-devel _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |