Sorry, you need to enable JavaScript to visit this website.

Feedback

Your feedback is important to keep improving our website and offer you a more reliable experience.

2018-Q1 release of KVMGT (Intel GVT-g for KVM)

BY Hongbo Wang ON Apr 25, 2018

We are pleased to announce an update of Intel GVT-g for KVM.

 

Intel GVT-g for KVM (a.k.a. KVMGT) is a full GPU virtualization solution with mediated pass-through, starting from 5th generation Intel Core(TM) processors with Intel processor graphics.  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.

 

Repositories:

-    Kernel: https://github.com/01org/gvt-linux  (tag: 2018-q1-gvt-stable-4.14)

-    Qemu: https://github.com/01org/igvtg-qemu  (tag: 2018-q1-stable-2.10.0)

 

Platform Support:

-    Server platforms: Intel(r) Xeon(r) E3_v4, E3_v5 and E3_v6 with Intel Graphics processor

-    Client platforms: Intel(r) Core(tm) 5th generation (code name: Broadwell), 6th generation (code name: Skylake) and 7th generation (code name: Kabylake)

 

Guest Operation System Validated:

-    Windows7 32-bit, Window7 64-bit, Windows8.1 64-bit, Windows10 64-bit

-    Ubuntu 16.04 64-bit

 

Major Changes from Q3’2017 Release:

-    This update is based on kernel version 4.14 and Qemu version 2.10.

-    Improve stability of Live Migration feature with internal stress test passed.

-    Implement dmabuf-based Guest VM framebuffer sharing. With adding GTK and Spice dmabuf support in Qemu (to be in Qemu 2.12), local and remote display use cases are preliminarily enabled.

-    Improve GVT health on IOMMU enabled platform by fixing high DMA setup overhead issue.

-    More bug fixing, code refinement and debugging interface enhancement, please refer to git log.

 

Limitation or known issues:

-    Due to graphics hardware resource limitation, the maximum number of Windows VM is 7.

-    The pre-defined type 1, 2 or 4 of vGPU must be created for VM to install Windows 7 32-bit. vGPU type 8 is not allocated to have enough graphics resource to support Windows 7 32-bit.

-    Some 3rd party applications/tools like GPU_Z, Passmark 9.0 running in Windows VM may meet BSOD error. This happens when these applications try to access some un-emulated Model Specific Registers in KVM. The workaround is to add “kvm.ignore_msrs=1” in host kernel’s command line to avoid this.

-    Due to one known regression issue in latest Intel Windows Graphics driver, Intel Windows Graphics driver version 15.45 is preferred to install in Windows VM and please don’t enable Windows auto-update mechanism to update the driver to later version. Some 3rd party applications like 3DMark rely on DirectX12 features. DirectX12 is not supported in Intel Windows Graphics driver 15.45 or earlier versions. So the applications will not run well in Windows VM with these drivers.

-    There are still instability issues seen on a few Broadwell and Kabylake machines when IOMMU is enabled in Host. The workaround is to turn off IOMMU on Intel graphics device by adding “intel_iommu=igfx_off”  in Host kernel’s command line.

 

Useful links:

-    Setup guide:

https://github.com/01org/gvt-linux/wiki/GVTg_Setup_Guide

 

-    New upstream architecture design introduction:

https://01.org/igvt-g/documentation/intel-gvt-g-new-architecture-introduction

 

-    Please subscribe to join the mailing list if you want to learn more about GVT-g project:

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

 

-    Please subscribe to join the mailing list if you want to contribute/review latest GVT-g upstream patches:

https://lists.freedesktop.org/mailman/listinfo/intel-gvt-dev

 

-    Official GVT-g portal:

https://01.org/igvt-g

 

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

http://www.linux-kvm.org/images/f/f3/01x08b-KVMGT-a.pdf

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

 

 

Important Note:

The KVMGT 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 KVMGT project.