Better vMotion for Graphics with EVC for GPUs


Various vendors offer Graphics Processing Unit (GPU) cards with different capabilities for various use cases. GPUs were developed as a specialized tool for processing images mainly for videogames and video rendering and editing software. However, recently they are being used in a growing number of CPU intensive use cases that are not only related to picture processing but also to artificial intelligence and machine learning, thanks to their multi-core architecture 

Up through the vSphere 7, the VM Hardware version was extensively used to ensure that certain graphics features like vSGA are exposed to a VM. Vendors that support this VM hardware version made sure that they are capable of providing these graphics features. This essentially means that customers had to ensure that they stick to a specific VM Hardware version to make sure that VMs can see and consume supported graphics features by vendors.   

Like GPU vendors, the VMware 3D software renderer also provides the same set of graphics capabilities. With common hardware versions, VMs can live vMotion between hosts using a GPU vendor and software renderer. However, this presents a problem if we choose to expose a feature that a graphics vendor or a software renderer does not support.   

What is EVC for Graphics?  

Introduced with vSphere 7U1, EVC for Graphics allows graphics mode enabled VMs to seamlessly consume a consistent set of features across varied graphics vendor and software renderers. A Graphics mode is a set of related VMFeatures to support 3D applications, e.g., D3D 10.0/ Open Gl 3.3, D3D 10.1 / Open GL 3.3, D3D 11.0 / Open GL 4.1  

Customers can now prioritize what is more important. Is it accessing the latest and greatest features or compatibility across the systems?   

EVC for Graphics functionality is an extension of Enhanced vMotion Capabilities (EVC). Using EVC for Graphics, customers will be able to create various graphic feature modes. The current release supports a single mode called “baseline,” corresponding to D3D 10.1 and OpenGL 3.3 standards. Support of D3D 11.0 and OpenGL 4.1 is in the roadmap and will be part of future releases.  

You can access EVC modes from the vSphere Client:  

EVC for Graphics

When a host joins an EVC for Graphics enabled cluster, the vCenter Server ensures that it can provide the required graphic functionalities. One exciting thing here is that we can still add ESXi hosts running ESXi 6.5, 6.7, and 7.0 to the EVC for Graphics enabled cluster because of their D3D 10.0 and OpenGL 3.3 supportability.   

Like EVC, customers can enable EVC for Graphics per VM. vCenter Server ensures that EVC for Graphics enabled VMs are powered-on on hosts that can provide the required graphics capabilities. This EVC for Graphics per-VM setting comes handy when VM migration across datacenters or cloud is involved. 


EVC for Graphics and vMotion 

Comprehensive compatibility checks of the target host during vMotion ensures no service disruptions in VM’s consuming graphics capabilities during migration. 


Using various vendors for graphics enables customers to get the best experience. However, using various vendors also comes with a baggage of inconsistency, poor maintainability, and compatibility issues.  

EVC for Graphics allows customers to be independent and ensure that they can prioritize their requirements without compromising the overall user experience. 


We are excited about these new releases and how vSphere is always improving to serve our customers and workloads better in the hybrid cloud. We will continue posting new technical and product information about vSphere with Tanzu & vSphere 7 Update 1 on Tuesdays, Wednesdays, and Thursdays through the end of October 2020! Join us by following the blog directly using the RSS feed, on Facebook, and on Twitter, and by visiting our YouTube channel which has new videos about vSphere 7 Update 1, too. As always, thank you, and please stay safe.