Improve VDI Performance

Improve VDI Performance

VirtuCache Improves End User Virtual Desktop Experience

Virtual Desktop Infrastructure (VDI) deployments are often times plagued by slow application response times, long Windows desktop boot times, and anti-virus software locking up VMs on the host.

The root cause of these issues is high storage latencies from backend storage appliance.

VirtuCache solves the storage latency issues in VDI deployments by automatically caching frequently and recently used data from LUNs being used by desktop VMs to a SSD that the customer installs in the ESXi Host. Subsequently, we serve more and more data from this SSD, instead of having the IO request traverse the storage network. Also all recent writes are first written to this SSD as well. The fact that much of the storage IO is now being read from and written to a SSD installed close to the CPU, improves VM level latencies considerably, resulting in quicker response times for desktop VMs even during times of peak workload.

Our customers use VirtuCache to improve the performance of VDI VMs deployed using VMware View, Citrix XenDesktop, Dell vWorkspace, and vanilla ‘VDI’ VMs accessed using RDP.

VirtuCache Differentiators for VDI

VirtuCache is a VMware kernel only software. We do not need any agents in guest VMs, hence we can support any guest operating system.

Most VDI deployments use linked clones to optimize storage and for ease of management. We are especially efficient in linked clone deployments, since we automatically recognize that the same parent VM is called repeatedly by the many user desktop VMs on the host, and we cache the parent VM only once, thus requiring much less SSD capacity than our competition .

Since the parent VM is linked to all end user VMs and hence frequently used, it will always be cached to the local SSD. Also since all writes from an end user VM are written to its own VMDK file, we will cache the end user VMDK to the local SSD as well (with at least one mirrored copy of this write committed to another SSD on another host to protect against data loss in case the host fails). Since both end user VMDKs and parent VMDK are on the in-host SSD, end user application experience from within VDI VMs is much improved and VDI VM boot times are shorter. Lastly, since the Anti-Virus software is now scanning files on the local SSD instead of backend storage, that process is faster as well.

Improving VDI Performance for VMware View Desktops at University of California, Los Angeles

UCLA has deployed Virtual Desktops for students and staff using VMware Horizon View. End users of these virtual desktops complained about slow boot times, Windows cursor and start button freezing and generally slow response times from the virtual desktops at various times during the day. To better understand the root cause of these issues, we collected VM level read and write storage throughput and latency data using VMware Esxtop. Both read and write throughput were always under 5 MBps, and write latencies were always less than 20ms. It was the read latencies that would peak to 100ms at various times during the day. Also the Trend Micro Deep Security Anti-Virus VM would lock up files during a file scanning operation resulting in a sudden jump in latencies across all the VMs on the host.

UCLA Server and Storage Infrastructure

UCLA has VMware Horizon View 5.1 running on HP BL490c Gen7 blades with 98 GB RAM.

Linked clones were used for virtual desktop VMs. Both user data and parent images were stored on 18 TB of LUN capacity provisioned on 8 gbps Xiotech and HP EVA appliances.

VirtuCache Deployment

VirtuCache was configured to cache LUNs on the HP EVA and Xiotech appliances to a single 480 GB Seagate 600 Pro SATA SSDs installed in each of the 6 ESXi hosts.

The ratio of SSD capacity in each host to LUN space utilization by the host was 16%.

The Seagate 600 Pro SSDs were from 2013. They costed $1.50/GB and exhibit VM level performance of 20ms latencies at 100MBps throughput. Enterprise grade SATA SSDs currently on the market (2016) cost $0.50/GB and perform at 10ms VM level latencies for peak throughput of 300 MBps.

Results

VMware’s Esxtop utility was used to measure latencies before and after deploying VirtuCache.

The chart below shows maximum latencies before and after VirtuCache for each of the VMs on the host for two consecutive Mondays. Performance data for the ESXi host shown in this graph is a representative example of the extent to which performance of each host in the cluster was improved.

virtucache_at_ucla

Benefit to UCLA

By using VirtuCache with a 480 GB Seagate enterprise SATA SSD on each host, peak VM level latencies were reduced by a fourth or less. Maximum VM latency at all times was now under 20 milliseconds.