Friday, 31 March 2017

VMware Horizon 7.1 + NVIDIA GRID vGPU = Awesomeness

I Always feel honoured and privilege being part of communities like (VMware vExperts and NVIDIA GRID COMMUNITY ADVISOR ) where I get chance to hear it from industries great speakerstechnologist, who all bring in their great experience and knowledge sharing capabilities and helping community to grow in terms of technical knowledge.

Thanks to all the community members, NVIDIA, and VMware for giving me a chance to be part of this awesome communities, Which helps me to write contents on my blog and wide spreading knowledge to the global Virtualization community.

I have dedicated couple of article which talks about features available with VMware Horizon like Virtual Printing and also discussed about the some of the protocol used like PCOIP which is Teradici proprietary UDP based protocol.

Apart from the above articles we have also seen lot of articles talking about NVIDIA GRID vGPU like 10 things we need to know about NVIDIA GRID vGPU where we discussed about various software editions like NVIDIA GRID Virtual Applications (For Organization deploying Xen App and other RDSH Solutions) , NVIDIA GRID Virtual PC (For users who want Virtual Desktops with Great user Experience) and NVIDIA GRID Virtual Workstation (For users who want  to use remote professional graphics applications with full performance on any device, anywhere.

Also talked about Grid Virtual PC, Virtual Workstation and Virtual Apps are available on a per concurrent user (CCU) model and CCU license is required for each user irrespective of the fact an active session exists or not to the Virtual Desktop.

In our last post related to NVIDIA GRID vGPU Series i.e Climb the GPU ladder with NVIDIA GRID vGPU we talked about the architecture of NVIDIA GRID vGPU and seen how GRID vGPU are assigned to Virtual Machines similar to physical GPU because each vGPU has a fixed amount of Frame Buffer (Portion of RAM containing a bitmap that is used to refresh a video display from a memory buffer) which is allocated at the time when vGPU's are created

Dedicated this article to talk about some new few features which has been made available with VMware Horizon 7.1 released by VMware on 16th March 2017 in context with NVIDIA GRID vGPU.But before we being to talk about features that has been introduced, would like to focus on three important concepts of cloning which are available to us and how one differs from the other.

Full clone is a complete independent copy of a Virtual Machine and shares nothing with the Master VM, i.e every-time we create a full clone it's would be operated separately from the Master VM from which it has been created.

Linked clones also known as composer linked clones helps us to create VM's with less storage space consumption because the accessing of software is been taken care with the help of shared Virtual disks, to create a composer linked clone we create a Master VM and take the snapshot of this Master VM, further cloning process will create a Replica VM (Full Clone) which will be sharing the disks with the Linked Clones.

Image Source - VMware

While creating automated Desktop pools View Composer uses Parent/Master Virtual machine often called as Base Image for the creation of new linked clone which has their own OS disks which is a snapshot delta disks for the operating system and could also have optional disks i.e Persistent Disks (Helps users to preserve data in case of shutdown/logout) and Disposable Disks (Holds Temp Folder and Paging File and is deleted when the Linked Clone is Powered Off).

Instant clones also shares the Virtual disks with Replica Virtual Machine however the process of creation of Instant Clones differs from Linked Clones, at the time of cloning a Parent VM is created from the Replica Virtual Machine and at the time of creation of Instant Clone they share the memory of running Virtual Machine from which they are created.

When an instant clone is created from a running parent Virtual Machine, any reads of unchanged information come from the already existing running parent VM. However, any changes made to the instant clone are written to a delta disk, not to the running parent VM. 
Image Source - VMware

Now that we are aware about the various cloning options available to us with VMware horizon we can proceed further and discuss about What's New with VMware Horizon 7.1.

Instant Clones support of vGPU allows us to provision vGPU desktops using Instant Clones, before creating pool we need to ensure we have created a Master VM and then we can proceed further with adding NVIDIA GRID vGPU Device and then we need to select the GPU Configuration for our Master VM, we can select the profile required which is as of now limited to one profile per cluster and is compatible with NVIDIA GRID M Series.

With this VMware Horizon 7.1 release we no longer need to choose between either having high-end, hardware-accelerated graphics support or Instant Clones. We can now enjoy the best of both worlds: the ability to create a pool of Instant Clones which is backed by NVIDIA GRID vGPU.

Being an administrator now we have the power of delivering 100 of desktops to end user's using instant clones with NVIDIA GRID vGPU support, this is definitely going to make difference from management and administration perspective. 

Based on the recent Scale Testing of Instant Clones with vGPU conducted by VMware + NVIDIA by testing 500 VM running with below configuration, it only 44 minutes to create the pool of fully customized and powered on Instant Clones. That is 4.8 seconds per clone on average
  • Horizon 7.1, Horizon Client 4.4, vSphere / ESXi 6.5 EP1
  • 5 HP Proliant DL 380 servers with Xeon CPU with a total of 96 cores across the servers, 2 M10 GRID vGPU cards per server
  • Master VM: 2 vCPU, 2GB RAM, M10-0B profile, Win 7 SP1 x64b
We can also perform maintenance on instant-clone Virtual Machines by using vSphere Web Client and putting the ESXi hosts into maintenance mode which will automatically deletes the parent VMs from that ESXi host.

Another important feature that I would like to highlight is VMware Blast extreme which is included in VMware Horizon 7 which uses the Transmission Control Protocol (TCP) by default, but can also use the User Datagram Protocol (UDP).

VMware Blast Extreme in VMware Horizon 7 works best with NVIDIA GRID  to offload the encode/decode process off the CPU to dedicated H.264 engines on NVIDIA GPUs to provide us a great user experience by reducing the overall latency and bandwidth


  1. BAD ASS! Thanks...

  2. Is ESXi 6.5 required for vGPU support and instant clones?


    1. TO use NVIDIA GRID vGPU, the virtual machines must run on ESXi 6.0 or later hosts, be virtual hardware version 11 or later, and be managed by vCenter Server 6.0 or later software.