VDI
The state of GPU assignment in QEMU/KVM: https://www.linux-kvm.org/images/b/b3/01x09b-VFIOandYou-small.pdf
https://wiki.debian.org/VGAPassthrough
https://wiki.gentoo.org/wiki/GPU_passthrough_with_libvirt_qemu_kvm
https://pve.proxmox.com/wiki/Pci_passthrough
- Windows BSOD: system thread exception not handledecho "options kvm ignore_msrs=1" > /etc/modprobe.d/kvm.conf
- Linux tty: Radeon kernel modesetting for r600 or later requires firmware-amd-graphicsapt-get install firmware-amd-graphics
https://www.linux-kvm.org/images/0/09/Qemu-gfx-2016.pdf
https://github.com/qemu/qemu/blob/master/hw/display/virtio-gpu.c
ARMv8/arm-64: use virtio-gpu because the legacy VGA framebuffer is very troublesome on aarch64
https://docs.opennebula.org/5.4/deployment/open_cloud_host_setup/pci_passthrough.html#loading-vfio-driver-in-initrd
http://www.nvidia.com/object/grid-certified-servers.html
GRID vGPU is a licensed feature on Tesla M6, Tesla M10, and Tesla M60.
http://www.nvidia.com/object/xendesktop-vgpu.html (Right bottom section: "Partner Solutions")
## Virtualized Application Solutions (Shared GPU)
Citrix XenApp 6.5 with OpenGL Add-on and Citrix XenDesktop 7 Hosted-Shared delivery

## Virtual Desktop Solutions (Shared GPU)
XenDesktop FP1 with NVIDIA GRID™ vGPU™1
Microsoft RemoteFX in Windows Server 2012
VMware Horizon View 5.2 with vSGA2
## Virtual Remote Workstation Solutions (Dedicated GPU)
Citrix XenDesktop 5.6
Citrix XenDesktop 7 VDI delivery
VMware View 5.3 with vDGA
AMD MxGPU is the world’s first hardware-based virtualized GPU solution, is built on industry standard SR-IOV (Single-Root I/O Virtualization) technology. Supprot VMWARE & Citrix.
https://01.org/sites/default/files/users/u16902/graphics_virtualization_update_figure_1.png
https://01.org/sites/default/files/users/u16902/graphics_virtualization_update_figure_2.png
https://01.org/sites/default/files/users/u16902/graphics_virtualization_update_figure_3.png

- –d (Intel® GVT –d): vDGA: virtual dedicated graphics acceleration (one VM to one physical GPU)
- –s (Intel® GVT -s): vSGA: virtual shared graphics acceleration (multiple VMs to one physical GPU)
- –g (Intel® GVT -g): vGPU: virtual graphics processing unit (multiple VMs to one physical GPU)
Visit
Intel GVT-g
page for more.https://01.org/linuxgraphics/downloads/firmware
GuC:designed to perform graphics workload scheduling on the various graphics parallel engines.
DMC: low-power idle states. It provides capability to save and restore display registers across these low-power states independently from the OS/Kernel.
HUC: offload some of the media functions from the CPU to GPU.
ls /lib/firmware/i915/ -l
https://docs.citrix.com/content/dam/docs/en-us/xenserver/current-release/downloads/xenserver-configuring-graphics.pdf
Graphics Virtualization is available for XenServer Enterprise Edition customers, or those who have access to XenServer through their XenApp/XenDesktop entitlement.
Diagram: https://www.citrix.com/blogs/wp-content/uploads/2014/10/XenClient-Architectural-Diagram.jpg
https://www.openstack.org/videos/boston-2017/virtual-desktop-infrastructure-vdi-with-openstack
https://guacamole.incubator.apache.org/
https://hub.docker.com/r/guacamole/guacamole/
HTML5 remote desktop gateway. supports VNC, RDP, and SSH.
https://github.com/pikvm/pikvm
Supported Raspberry Pi 2, 3, 4 and ZeroW
https://github.com/Seitanas/kvm-vdi/wiki
supported backends: plain QEMU-KVM and OpenStack
https://www.neblogas.lt/2016/07/18/technical-info-ovirt-agent-sso/
https://www.spice-space.org/download.html
ref: https://github.com/mbroemme/vdi-stream-client
Method | Local | Remote | 3D |
---|---|---|---|
Yes | Yes | No | |
Yes | No | Yes | |
Yes | No | Yes | |
Yes | No | Yes (Intel only) | |
Yes | Yes | Yes (Linux only) | |
Yes | Yes | Yes (Linux only) | |
Yes | Yes | Yes (Nvidia only) | |
Yes | Yes | Yes | |
Yes | Yes | Yes |
Last modified 4mo ago