[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [Intel-gfx] [Announcement] 2015-Q3 release of XenGT - a Mediated Graphics Passthrough Solution from Intel



Hi all,

We are pleased to announce another update of Intel GVT-g for Xen.

Intel GVT-g is a full GPU virtualization solution with mediated pass-through, 
starting from 4th generation Intel Core(TM) processors with Intel Graphics 
processors. A virtual GPU instance is maintained for each VM, with part of 
performance critical resources directly assigned. The capability of running 
native graphics driver inside a VM, without hypervisor intervention in 
performance critical paths, achieves a good balance among performance, feature, 
and sharing capability. Xen is currently supported on Intel Processor Graphics 
(a.k.a. XenGT); and the core logic can be easily ported to other hypervisors.


Repositories

    Kernel: https://github.com/01org/igvtg-kernel (2015q3-3.18.0 branch)
    Xen: https://github.com/01org/igvtg-xen (2015q3-4.5 branch)
    Qemu: https://github.com/01org/igvtg-qemu (xengt_public2015q3 branch)


This update consists of:

    - XenGT is now merged with KVMGT in unified repositories(kernel and qemu), 
but currently
      different branches for qemu.  XenGT and KVMGT share same iGVT-g core 
logic.
    - fix sysfs/debugfs access seldom crash issue
    - fix a BUG in XenGT I/O emulation logic
    - improve 3d workload stability

Next update will be around early Jan, 2016.


Known issues:

    - At least 2GB memory is suggested for VM to run most 3D workloads.
    - Keymap might be incorrect in guest. Config file may need to explicitly specify 
"keymap='en-us'". Although it looks like the default value, earlier we saw the 
problem of wrong keymap code if it is not explicitly set.
    - When using three monitors, doing hotplug between Guest pause/unpause may 
not be able to lightup all monitors automatically. Some specific monitor issues.
    - Cannot move mouse pointer smoothly in guest by default launched by VNC mode. Configuration 
file need to explicitly specify "usb=1" to enable a USB bus, and 
"usbdevice='tablet'" to add pointer device using absolute coordinates.
    - Resume dom0 from S3 may cause some error message.
    - i915 unload/reload cannot works well with less than 3 vcpu when upowerd 
service was running
    - Unigen Tropics running in multiple guests will cause dom0 and guests tdr.


Please subscribe the mailing list to report BUGs, discuss, and/or contribute:

    https://lists.01.org/mailman/listinfo/igvt-g


More information about Intel GVT-g background, architecture, etc can be found 
at(may not be up-to-date):

    https://01.org/igvt-g
    https://www.usenix.org/conference/atc14/technical-sessions/presentation/tian
    
http://events.linuxfoundation.org/sites/events/files/slides/XenGT-Xen%20Summit-v7_0.pdf
    
http://events.linuxfoundation.org/sites/events/files/slides/XenGT-Xen%20Summit-REWRITE%203RD%20v4.pdf
    https://01.org/xen/blogs/srclarkx/2013/graphics-virtualization-xengt


Note:

   The XenGT project should be considered a work in progress. As such it is not 
a complete product nor should it be considered one. Extra care should be taken 
when testing and configuring a system to use the XenGT project.


--
Thanks,
Jike

On 07/07/2015 10:49 AM, Jike Song wrote:
Hi all,

We're pleased to announce a public update to Intel Graphics Virtualization 
Technology(Intel GVT-g, formerly known as XenGT).

Intel GVT-g is a full GPU virtualization solution with mediated pass-through, 
starting from 4th generation Intel Core(TM) processors with Intel Graphics 
processors. A virtual GPU instance is maintained for each VM, with part of 
performance critical resources directly assigned. The capability of running 
native graphics driver inside a VM, without hypervisor intervention in 
performance critical paths, achieves a good balance among performance, feature, 
and sharing capability. Xen is currently supported on Intel Processor Graphics 
(a.k.a. XenGT); and the core logic can be easily ported to other hypervisors, 
for example, the experimental code has been released to support GVT-g running 
on a KVM hypervisor (a.k.a KVMGT).

Tip of repositories
-------------------------

      Kernel: 5b73653d5ca, Branch: master-2015Q2-3.18.0
      Qemu: 2a75bbff62c1, Branch: master
      Xen: 38c36f0f511b1, Branch: master-2015Q2-4.5

This update consists of:
      - Change time based scheduler timer to be configurable to enhance 
stability
      - Fix stability issues that VM/Dom0 got tdr when hang up at some specific 
instruction on BDW
      - Optimize the emulation of el_status register to enhance stability
      - 2D/3D performance in linux VMs has been improved about 50% on BDW
      - Fix abnormal idle power consumption issue due to wrong forcewake policy
      - Fix tdr issue when running 2D/3D/Media workloads in Windows VMs 
simultaneously
      - KVM support is still in a separate branch as prototype work. We plan to 
integrate KVM/Xen support together in the future releases
      - Next update will be around early Oct, 2015

Notice that this release can support both Intel 4th generation Core CPU(code 
name: Haswell) and Intel 5th generation Core CPU (code name: Broadwell), while 
the limitation of the latter include:
      * 3D conformance may have some failure
      * Under high demand 3D workloads, stability issues are detected
      * Multi-monitor scenario is not fully tested, while single monitor of 
VGA/HDMI/DP/eDP should just work
      * Hotplug DP may cause black screen even on native environment

Where to get

kernel: https://github.com/01org/XenGT-Preview-kernel.git
xen: https://github.com/01org/XenGT-Preview-xen.git
qemu: https://github.com/01org/XenGT-Preview-qemu.git


We have a mailing list for GVT-g development, bug report and technical 
discussion:

      https://lists.01.org/mailman/listinfo/igvt-g

More information about Intel GVT-g background, architecture, etc can be found 
at:

      
https://www.usenix.org/conference/atc14/technical-sessions/presentation/tian
      
http://events.linuxfoundation.org/sites/events/files/slides/XenGT-Xen%20Summit-v7_0.pdf
      https://01.org/xen/blogs/srclarkx/2013/graphics-virtualization-xengt


Note: The XenGT project should be considered a work in progress. As such it is 
not a complete product nor should it be considered one. Extra care should be 
taken when testing and configuring a system to use the XenGT project.


--
Thanks,
Jike

On 04/10/2015 09:23 PM, Jike Song wrote:
Hi all,

We're pleased to announce a public update to Intel Graphics Virtualization 
Technology (Intel GVT-g, formerly known as XenGT). Intel GVT-g is a complete 
vGPU solution with mediated pass-through, supported today on 4th generation 
Intel Core(TM) processors with Intel Graphics processors. A virtual GPU 
instance is maintained for each VM, with part of performance critical resources 
directly assigned. The capability of running native graphics driver inside a 
VM, without hypervisor intervention in performance critical paths, achieves a 
good balance among performance, feature, and sharing capability. Though we only 
support Xen on Intel Processor Graphics so far, the core logic can be easily 
ported to other hypervisors.

Tip of repositories
-------------------------

            Kernel: a011c9f953e, Branch: master-2015Q1-3.18.0
            Qemu: 2a75bbff62c1, Branch: master
            Xen: 38c36f0f511b1, Branch: master-2015Q1-4.5

Summary this update
-------------------------
        - Preliminary Broadwell support.
        - kernel update from drm-intel 3.17.0 to drm-intel 3.18.0(tag: 
drm-intel-next-fixes-2014-12-17, notice that i915 driver code is much newer 
than kernel stable version).
        - Next update will be around early July, 2015.
        - KVM support is still in a separate branch as prototype work. We plan 
to integrate KVM/Xen support together in future releases.

This update consists of:
        - gvt-g core logic code was moved into i915 driver directory.
        - Host mediation is used for dom0 i915 driver access, instead of 
de-privileged dom0.
        - The Xen-specific code was separated from vgt core logic into a new file 
"driver/xen/xengt.c".
        - Broadwell is preliminarily supported in this release. Users could 
start multiple linux/windows 64-bit virtual machines simultaneously, and 
perform display switch among them.

Notice that it is still preliminary release for BDW, which is not yet in the 
same level of HSW release. Differences include:
                   * Power/performance tuning on BDW is not yet done.
         * Stability needs to be improved.
                   * No 32-bit guest OS support.
                   * Multi-monitor scenario is not fully tested, while single 
monitor of VGA/HDMI/DP/eDP should just work.


Where to get:
-----------------
                   kerenl: https://github.com/01org/XenGT-Preview-kernel.git
                   Xen: https://github.com/01org/XenGT-Preview-xen.git
                   Qemu: https://github.com/01org/XenGT-Preview-qemu.git

Please refer to the new setup guide, which provides step-to-step details about 
building/configuring/running Intel GVT-g:
         
https://github.com/01org/XenGT-Preview-kernel/blob/master-2015Q1-3.18.0/XenGT_Setup_Guide_2015Q1.pdf

More information about Intel GVT-g background, architecture, etc can be found 
at:
                   
https://www.usenix.org/conference/atc14/technical-sessions/presentation/tian
                   
http://events.linuxfoundation.org/sites/events/files/slides/XenGT-Xen%20Summit-v7_0.pdf
                   
https://01.org/xen/blogs/srclarkx/2013/graphics-virtualization-xengt

The previous update can be found here:
                  
http://lists.xen.org/archives/html/xen-devel/2014-12/msg00474.html


Note
---------------
        The XenGT project should be considered a work in progress, As such it 
is not a complete product nor should it be considered one., Extra care should 
be taken when testing and configuring a system to use the XenGT project.


--
Thanks,
Jike

On 01/09/2015 04:51 PM, Jike Song wrote:
Hi all,

      We're pleased to announce a public update to Intel Graphics 
Virtualization Technology (Intel GVT-g, formerly known as XenGT). Intel GVT-g 
is a complete vGPU solution with mediated pass-through, supported today on 4th 
generation Intel Core(TM) processors with Intel Graphics processors. A virtual 
GPU instance is maintained for each VM, with part of performance critical 
resources directly assigned. The capability of running native graphics driver 
inside a VM, without hypervisor intervention in performance critical paths, 
achieves a good balance among performance, feature, and sharing capability. 
Though we only support Xen on Intel Processor Graphics so far, the core logic 
can be easily ported to other hypervisors.   The XenGT project should be 
considered a work in progress, As such it is not a complete product nor should 
it be considered one., Extra care should be taken when testing and configuring 
a system to use the XenGT project.

The news of this update:

        - kernel update from 3.14.1 to drm-intel 3.17.0.
        - We plan to integrate Intel GVT-g as a feature in i915 driver. That 
effort is still under review, not included in this update yet.
        - Next update will be around early Apr, 2015.

This update consists of:

        - Including some bug fixes and stability enhancement.
        - Making XenGT device model to be aware of Broadwell. In this version 
BDW is not yet functioning.
        - Available Fence registers number is changed to 32 from 16 to align 
with HSW hardware.
        - New cascade interrupt framework for supporting interrupt 
virtualization on both Haswell and Broadwell.
        - Add back the gem_vgtbuffer. The previous release did not build that 
module for 3.14 kernel. In this release, the module is back and rebased to 3.17.
        - Enable the irq based context switch in vgt driver, which will help 
reduce the cpu utilization while doing context switch, it is enabled by 
default, and can be turn off by kernel flag irq_based_ctx_switch.


Please refer to the new setup guide, which provides step-to-step details about 
building/configuring/running Intel GVT-g:

        
https://github.com/01org/XenGT-Preview-kernel/blob/master/XenGT_Setup_Guide.pdf

The new source codes are available at the updated github repos:

        Linux: https://github.com/01org/XenGT-Preview-kernel.git
        Xen: https://github.com/01org/XenGT-Preview-xen.git
        Qemu: https://github.com/01org/XenGT-Preview-qemu.git


More information about Intel GVT-g background, architecture, etc can be found 
at:


        
https://www.usenix.org/conference/atc14/technical-sessions/presentation/tian
        
http://events.linuxfoundation.org/sites/events/files/slides/XenGT-Xen%20Summit-v7_0.pdf
        https://01.org/xen/blogs/srclarkx/2013/graphics-virtualization-xengt



The previous update can be found here:


        http://lists.xen.org/archives/html/xen-devel/2014-12/msg00474.html



Appreciate your comments!



--
Thanks,
Jike


On 12/04/2014 10:45 AM, Jike Song wrote:
Hi all,

We're pleased to announce a public release to Intel Graphics Virtualization 
Technology (Intel GVT-g, formerly known as XenGT). Intel GVT-g is a complete 
vGPU solution with mediated pass-through, supported today on 4th generation 
Intel Core(TM) processors with Intel Graphics processors. A virtual GPU 
instance is maintained for each VM, with part of performance critical resources 
directly assigned. The capability of running native graphics driver inside a 
VM, without hypervisor intervention in performance critical paths, achieves a 
good balance among performance, feature, and sharing capability. Though we only 
support Xen on Intel Processor Graphics so far, the core logic can be easily 
ported to other hypervisors.


The news of this update:


        - kernel update from 3.11.6 to 3.14.1

        - We plan to integrate Intel GVT-g as a feature in i915 driver. That 
effort is still under review, not included in this update yet

        - Next update will be around early Jan, 2015


This update consists of:

        - Windows HVM support with driver version 15.33.3910

        - Stability fixes, e.g. stabilize GPU, the GPU hang occurrence rate 
becomes rare now

        - Hardware Media Acceleration for Decoding/Encoding/Transcoding, VC1, 
H264 etc. format supporting

        - Display enhancements, e.g. DP type is supported for virtual PORT

        - Display port capability virtualization: with this feature, dom0 
manager could freely assign virtual DDI ports to VM, not necessary to check 
whether the corresponding physical DDI ports are available



Please refer to the new setup guide, which provides step-to-step details about 
building/configuring/running Intel GVT-g:


        
https://github.com/01org/XenGT-Preview-kernel/blob/master/XenGT_Setup_Guide.pdf



The new source codes are available at the updated github repos:


        Linux: https://github.com/01org/XenGT-Preview-kernel.git

        Xen: https://github.com/01org/XenGT-Preview-xen.git

        Qemu: https://github.com/01org/XenGT-Preview-qemu.git


More information about Intel GVT-g background, architecture, etc can be found 
at:


        
https://www.usenix.org/conference/atc14/technical-sessions/presentation/tian

        
http://events.linuxfoundation.org/sites/events/files/slides/XenGT-Xen%20Summit-v7_0.pdf

        https://01.org/xen/blogs/srclarkx/2013/graphics-virtualization-xengt


The previous update can be found here:


        http://lists.xen.org/archives/html/xen-devel/2014-07/msg03248.html


Appreciate your comments!


--
Thanks,
Jike

On 07/25/2014 04:31 PM, Jike Song wrote:
Hi all,

We're pleased to announce an update to Intel Graphics Virtualization Technology 
(Intel GVT-g, formerly known as XenGT). Intel GVT-g is a complete vGPU solution 
with mediated pass-through, supported today on 4th generation Intel Core(TM) 
processors with Intel Graphics processors. A virtual GPU instance is maintained 
for each VM, with part of performance critical resources directly assigned. The 
capability of running native graphics driver inside a VM, without hypervisor 
intervention in performance critical paths, achieves a good balance among 
performance, feature, and sharing capability. Though we only support Xen on 
Intel Processor Graphics so far, the core logic can be easily ported to other 
hypervisors.

The news of this update:

        - Project code name is "XenGT", now official name is Intel Graphics 
Virtualization Technology (Intel GVT-g)
        - Currently Intel GVT-g supports Intel Processor Graphics built into 
4th generation Intel Core processors - Haswell platform
        - Moving forward, XenGT will change to quarterly release cadence. Next 
update will be around early October, 2014.

This update consists of:

        - Stability fixes, e.g. stable DP support
        - Display enhancements, e.g. virtual monitor support. Users can define 
a virtual monitor type with customized EDID for virtual machines, not 
necessarily the same as physical monitors.
        - Improved support for GPU recovery
        - Experimental Windows HVM support. To download the experimental 
version, see setup guide for details
        - Experimental Hardware Media Acceleration for decoding.


Please refer to the new setup guide, which provides step-to-step details about 
building/configuring/running Intel GVT-g:

        
https://github.com/01org/XenGT-Preview-kernel/blob/master/XenGT_Setup_Guide.pdf


The new source codes are available at the updated github repos:

        Linux: https://github.com/01org/XenGT-Preview-kernel.git
        Xen: https://github.com/01org/XenGT-Preview-xen.git
        Qemu: https://github.com/01org/XenGT-Preview-qemu.git


More information about Intel GVT-g background, architecture, etc can be found 
at:

        
https://www.usenix.org/conference/atc14/technical-sessions/presentation/tian
        
http://events.linuxfoundation.org/sites/events/files/slides/XenGT-Xen%20Summit-v7_0.pdf
        https://01.org/xen/blogs/srclarkx/2013/graphics-virtualization-xengt

The previous update can be found here:

        http://lists.xen.org/archives/html/xen-devel/2014-02/msg01848.html

Appreciate your comments!




--
Thanks,
Jike


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.