By Stephen J. Bigelow, Senior Technology Writer
Virtual desktop infrastructure (VDI) moves processing workloads from users' PCs to servers in the data center. In this model, endpoint PCs can be extremely simple -- little more than I/O devices -- because, after all, the server is doing all of the work. But with VDI also comes the fact that virtual desktop performance is no longer a matter of local processing power. Rather, it is a matter of server processing power and network connectivity.
Solutions providers can use the following tips to help ensure an adequate experience for virtual desktop users.
Evaluate and upgrade server resources
From a practical standpoint, desktop virtualization is all about the servers, so solutions providers need to evaluate their customers' server resources carefully. The servers will require enough CPU, memory and network throughput to handle the peak processing loads of all virtual desktops on the system. (Multiple servers are often needed to support hundreds or even thousands of users.) Poor virtual desktop performance is almost always the result of an overburdened server or network bottleneck.
A solutions provider typically has three options to correct inadequate server resources:
- Add more processors, memory or network connectivity to the server. These upgrades don't always make financial sense, however, and solutions providers should weigh the price tag against the cost of a new, more powerful server.
- Add a new server and migrate some of the virtual desktops there, effectively dividing the workload among multiple servers. (Blade servers are the most popular for desktop virtualization because it's easy to physically upgrade or add server blades.) Using multiple physical servers also provides a level of redundancy, so that a failure in one server won't take down all of the customer's desktops.
- Replace an existing server with a new and more powerful system. This approach really only makes sense when the current server is too old to upgrade without breaking the bank or too costly to support alongside a second server.
Use server performance monitoring
Any foray into desktop virtualization should involve server performance monitoring, which tracks and reports on CPU, memory and I/O utilization. Server performance monitoring provides important data about the total burden on a server, including peak loads. Solutions providers can use this data to identify resource shortages on the server and justify plans for server upgrades or additional server deployments. Monitoring data can also reveal users or applications that are placing unusual or significant demands on the server.
In addition, server monitoring can show trends in resource utilization, which solutions providers can use to plan future capacity improvements. For example, if a customer is adding two new desktops per month, monitoring can show the corresponding resource utilization. It's then a simple matter of estimating the time left before demand exceeds server capacity (and desktop performance problems occur).
Take advantage of resource throttling
Virtualization typically allows for resource throttling -- adjusting the amounts of CPU, memory and bandwidth allocated to any given virtual machine. Virtual desktops that run demanding applications can receive additional server resources, while those with more mundane tasks can have theirs limited. Server performance monitoring is a critical part of this process because solutions providers need to identify the demands of each virtual desktop before allocating server resources.
Reduce desktop display demands
Local coprocessors handle graphics tasks on PCs, but virtual desktops render each screen on the server and then pass the image data back to the endpoint for display. Remote desktop protocol (RDP) and other modern protocols have vastly improved display performance, but visually intensive programs can still affect server and network performance -- which in turn affects desktop performance.
One way to potentially ease the traffic demands of a virtual desktop is to reduce the visual requirements of the application, which reduces the amount of server memory needed for the video buffer.
Doing so can make a huge difference. For example, a display resolution of 1920x1200 at 32 bits per pixel (bpp) and 30 frames per second (fps) requires 2.2 gigabits of uncompressed display data per second. Reducing the display resolution to 1280x1024 at 16 bpp and 30 fps would only need 629 megabits of uncompressed display data per second -- about 25% of the bandwidth. Displaying video in small windows instead of full-screen mode can also ease bandwidth constraints.
Monitoring network performance
It's also important to monitor the customer's network performance, which can reveal the bandwidth demands of each virtual desktop. Network performance monitoring can be indispensable in helping solutions providers identify the network bottlenecks that hinder virtual desktop performance. Providers can then propose network improvement projects to add throughput in critical network segments or improve resilience.
As an example, a network carrying iSCSI and virtual desktop data on the same segments may suffer from bottlenecks. A solutions provider may choose to segregate the two data types onto isolated network segments. Network health monitoring is also important, and it can give early warning signs of network failures that could cripple virtual desktop users.
As with server monitoring, network monitoring illustrates trends in traffic and bandwidth utilization over time, allowing solutions providers to propose and schedule network upgrade projects well before desktop performance suffers.