NVIDIA GRID vGPU provides direct access to the physical GPU on an ESXi host, allowing multiple VMs to share a single GPU using vendor graphics card drivers.
Follow these instructions to configure VMs and ESXi hosts to create NVIDIA GRID vGPU-enabled desktop pools in Horizon 8.
- Verify the host machine is supported in the VMware Compatibility Guide, and check with the vendor to verify the host meets power and configuration requirements. Install the graphics card in the ESXi host.
- Verify that the guest virtual machines run with virtual hardware version 11 or later. Configure the virtual machine template to use a shared PCI device before you create the desktop pool in Horizon 8.
- Download the NVIDIA vSphere Installation Bundle (VIB) for the appropriate version of ESXi. VIBs are compatible with major version releases. For instance, the NVIDIA ESXi 6.5 VIB works with ESXi 6.5U2, but will not work with ESXi 6.7.
- Update VMware Tools and Virtual Hardware (vSphere Compatibility) for the template or each VM that will use vGPU.
- In the vSphere Web Client, edit the VM settings and add a shared PCI device. PCI devices require reserving guest memory. Expand New PCI Device and click Reserve all guest memory. You can also modify this setting in the VM Memory settings.
- Select the appropriate GPU Profile for your use case.
- Download the NVIDIA Guest Driver installer package to the VM. Make sure it matches the version of the installed NVIDIA VIB on ESXi.
- Choose one of the following methods to install the NVIDIA Guest Driver. After the NVIDIA driver is installed, vCenter Server console will display a black screen.
- Desktop Pool
- View Agent Direct-Connection Plug-in
- RDP
vMotion of vGPU Virtual Machines
- vMotion of vGPU Virtual Machines is supported starting with vSphere 6.7. See here for details on how to configure this and more information.
- vSphere Distributed Resource Scheduler (DRS) in vSphere 6.7 Update 1 and later supports initial placement of vGPU VMs without load balancing support.
- DRS in vSphere 6.7 or vSphere 7.0 versions earlier than vSphere 7.0 U3f will not automatically vMotion vGPU VMs when ESXi hosts are placed in maintenance mode. An administrator is required to manually initiate vMotion of vGPU VMs in order to allow ESXi hosts to enter maintenance mode.
- DRS in vSphere 7.0 U3f and later can be configured to allow automatic vMotion when hosts are placed in maintenance mode. See https://kb.vmware.com/s/article/88271 for instructions. DRS load balancing remains unsupported for vGPU VMs.
Desktop Pool
This method is for creating a template VM.
- Install Horizon Agent.
- Configure domain and other network settings, as needed.
- Configure the VMs as desktops in the pool.
- Assign admin level access to accounts.
- Connect Horizon Client to Horizon Console to access desktops.
- Install NVIDIA driver, reboot, and reconnect.
- Access NVIDIA Control Panel and enter license server information.
View Agent Direct-Connection Plug-in
- Install Horizon Agent.
- Install the matching View Agent Direct-Connection Plug-in. You need local administrator account access.
- Log in with Horizon Client. Use the VM IP address as Connection Server.
- Install NVIDIA driver, reboot, and reconnect.
- Access NVIDIA Control Panel and enter license server information.
RDP
- Enable Remote Desktop access in the VMs.
- Log in using Microsoft Remote Desktop Connection.
- Install NVIDIA driver, reboot, and reconnect.
- Access NVIDIA Control Panel and enter license server information.
- Install Horizon Agent.
- Configure domain and other network settings, as needed.
In the Add Desktop Pool wizard, select the NVIDIA GRID vGPU option for 3D Renderer and only NVIDIA GRID vGPU-enabled ESXi hosts and NVIDIA GRID vGPU-enabled virtual machine templates appear for selection in the wizard. VMware recommends using the default Blast settings for the pool protocol. For additional protocol options and other advanced configuration settings, consult the NVIDIA GRID vGPU User Guide.
You can use the same vGPU profile for a mix of full clones and instant clones. If you use different vGPU profiles for a mix of full clones and instant clones, avoid creating or powering on full clones and instant clones at the same time.
If you are using multiple vGPU profiles, set the host assignment policy of all GPU hosts within a cluster to GPU consolidation. For a single vGPU profile that is used by all the desktops, set assignment policy of all GPU hosts within a cluster to Best Performance.