Since this question has come up a few times this week, I thought it is worth a quick blog post on how to enable the new vGPU vMotion feature which is now available in latest vSphere 6.7 Update 1 release. If you try to vMotion a VM that has been configured with a vGPU, you see the following message stating vGPU hot migration is not enabled.
To enable vGPU vMotion, you just need to update the following vCenter Server Advanced Setting vgpu.hotmigrate.enabled to true using the vSphere UI. The change will go into effect immediately and you will now be able to vMotion a VM configured with vGPU. This setting is actually documented in the official vSphere documentation here, but from all the folks I spoke with, it looks like it never came up or it must have been missed.
In addition to vMotion support, you can also perform Storage vMotion & Cross vMotion (Compute & Storage) for vGPU enabled VMs. Make sure that both your vCenter Server and ESXi hosts have been upgraded to vSphere 6.7 Update 1 and that you have NVIDIA GRID hardware and VIB installed on ESXi host. For folks interested in learning more about the new vMotion features in vSphere 6.7 Update 1, be sure to check out the VMworld 2018 session What's New in vMotion Technical Deep Dive.
Lastly, for those that prefer to automate this configuration change, here is a quick PowerCLI snippet for enabling vGPU vMotion:
Get-AdvancedSetting -Entity $global:DefaultVIServer -Name vgpu.hotmigrate.enabled | Set-AdvancedSetting -Value $true -Confirm:$false