XenServer

Graphics overview

This section provides an overview of the virtual delivery of 3D professional graphics applications and workstations in XenServer. The offerings include GPU Pass-through (for NVIDIA, AMD, and Intel GPUs) and hardware-based GPU sharing with NVIDIA vGPU™ and Intel GVT-g™.

Graphics Virtualization is available for XenServer Premium Edition customers. To learn more about XenServer editions, and to find out how to upgrade, visit the XenServer website. For more information, see Licensing.

GPU pass-through

In a virtualized system, most of the physical system components are shared. These components are represented as multiple virtual instances to multiple clients by the hypervisor. A pass-through GPU is not abstracted at all, but remains one physical device. Each hosted virtual machine (VM) gets its own dedicated GPU, eliminating the software abstraction and the performance penalty that goes with it.

XenServer allows you to assign a physical GPU (in the XenServer host) to a Windows or Linux VM running on the same host. This GPU pass-through feature is intended for graphics power users, such as CAD designers.

Shared GPU (vGPU)

Shared GPU (vGPU) allows one physical GPU to be used by multiple VMs concurrently. Because a portion of a physical GPU is used, performance is greater than emulated graphics, and there is no need for one card per VM. This feature enables resource optimization, boosting the performance of the VM. The graphics commands of each virtual machine are passed directly to the GPU, without translation by the hypervisor.

Multiple shared GPU (vGPU)

Multiple vGPU enables multiple virtual GPUs to be used concurrently by a single VM. Only certain vGPU profiles can be used and all vGPUs attached to a single VM must be of the same type. These additional vGPUs can be used to perform computational processing. For more information about the number of vGPUs supported for a single VM, see Configuration Limits.

This feature is only available for NVIDIA GPUs. For more information about the physical GPUs that support the multiple vGPU feature, see the NVIDIA documentation.

Vendor support

The following table lists guest support for the GPU pass-through, shared GPU (vGPU), and multiple shared GPU (vGPU) features:

  GPU pass-through for Windows VMs GPU pass-through for Linux VMs Shared GPU (vGPU) for Windows VMs Shared GPU (vGPU) for Linux VMs Multiple shared GPU (vGPU) for Windows VMs Multiple shared GPU (vGPU) for Linux VMs
AMD YES          
Intel YES   YES (deprecated)      
NVIDIA YES YES YES YES YES (see note) YES (see note)

Note:

  • Only some of the guest operating systems support multiple vGPU. For more information, see Guest support and constraints.
  • Only some of the guest operating systems support vGPU live migration. For more information, see Vendor support.

You might need a vendor subscription or a license depending on the graphics card used.

vGPU live migration

vGPU live migration enables a VM that uses a virtual GPU to perform live migration, storage live migration, or VM suspend. VMs with vGPU live migration capabilities can be migrated to avoid downtime.

vGPU live migration also enables you to perform rolling pool upgrades on pools that host vGPU-enabled VMs. For more information, see Rolling pool upgrades.

To use vGPU live migration or VM suspend, your VM must run on a graphics card that supports this feature. Your VM must also have the supported drivers from the GPU vendor installed.

Warning:

The size of the GPU state in the NVIDIA driver can cause a downtime of 5 seconds or more during vGPU live migration.

The following restrictions apply when using vGPU live migration:

  • Live migration is not compatible with GPU Pass-through.

  • VMs must have the appropriate vGPU drivers installed to be supported with any vGPU live migration features. The in-guest drivers must be installed for all guests using the vGPU feature.

  • Reboot and shutdown operations on a VM are not supported while a migration is in progress. These operations can cause the migration to fail.

  • Linux VMs are not supported with any vGPU live migration features.

  • Live migration by the Workload Balancing appliance is not supported for vGPU-enabled VMs. The Workload Balancing appliance cannot do capacity planning for VMs that have a vGPU attached.

  • After migrating a VM using vGPU live migration, the guest VNC console might become corrupted. Use ICA, RDP, or another network-based method for accessing VMs after a vGPU live migration has been performed.

  • VDI migration uses live migration, therefore requires enough vGPU space on the host to make a copy of the vGPU instance on the host. If the physical GPUs are fully used, VDI migration might not be possible.

Vendor support

The following table lists support for vGPU live migration:

  GPU pass-through for Windows VMs GPU pass-through for Linux VMs Shared GPU (vGPU) for Windows VMs Shared GPU (vGPU) for Linux VMs Multiple shared GPU (vGPU) for Windows VMs Multiple shared GPU (vGPU) for Linux VMs
NVIDIA     YES   YES  

For more information about the graphics cards that support this feature, see the vendor-specific sections of this guide. Customers might need a vendor subscription or a license depending on the graphics card used.

Guest support and constraints

XenServer supports the following guest operating systems for virtual GPUs.

NVIDIA vGPU

Operatings systems marked with an asterisk (*) also support multiple vGPU.

Windows guests:

  • Windows 10 (64-bit) *
  • Windows 11 (64-bit) *
  • Windows Server 2016 (64-bit) *
  • Windows Server 2019 (64-bit) *
  • Windows Server 2022 (64-bit) *

Linux guests:

  • RHEL 7 *
  • RHEL 8 *
  • RHEL 9 *
  • CentOS 7
  • CentOS Stream 9
  • Ubuntu 18.04 * (deprecated)
  • Ubuntu 20.04 *
  • Ubuntu 22.04 *
  • Rocky Linux 8 *
  • Rocky Linux 9 *

Intel GVT-g (deprecated)

Windows guests:

  • Windows 10 (64-bit)
  • Windows Server 2016 (64-bit)

Constraints

  • VMs with a virtual GPU are not supported with Dynamic Memory Control.

  • XenServer automatically detects and groups identical physical GPUs across hosts in the same pool. If assigned to a group of GPUs, a VM can be started on any host in the pool that has an available GPU in the group.

  • All graphics solutions (NVIDIA vGPU, Intel GVT-d, Intel GVT-G, and vGPU pass-through) can be used in an environment that uses high availability. However, VMs that use these graphics solutions cannot be protected with high availability. These VMs can be restarted on a best-effort basis while there are hosts with the appropriate free resources.

Graphics overview