This content is part of the Essential Guide: Everything you need to know about GPU virtualization
Evaluate Weigh the pros and cons of technologies, products and projects you are considering.

For images with a need for speed, look to graphics acceleration

With VDI, image rendering can suffer, but the world of graphics acceleration technology has changed. Options such as shared GPUs and GPU pass-through make it easier to deliver quality graphics to virtual desktops.

Graphics acceleration technology can overcome the limitations of processing applications on virtual desktops. Under the right circumstances, it can even deliver apps at performance levels comparable to those of a physical desktop.

But not all acceleration technologies are created equal, and high performance often comes with a sizeable price tag. Choosing the right technology to implement depends on understanding the available options and how they differ.

The evolving world of graphics acceleration

Desktop applications have become more sophisticated and complex -- particularly those used for analytics, engineering and scientific research -- and the need to offload some of the compute-intensive operations has grown proportionately. This has led to graphics-accelerated computing where a graphics processing unit (GPU) works in conjunction with the computer's CPU to take on some of the processing burden.

A computer's GPU can be built into the motherboard's chipset, or it can be a separate video card that you insert into one of the computer's expansion slots. Unlike the CPU, which is optimized for sequential serial processing, the GPU adheres to a parallel computing architecture that is made to process multiple operations simultaneously.

Graphics acceleration has proven to be a boon for applications that rely on a graphical user interface to render data, and more apps than ever take advantage of acceleration technology today.

Unfortunately, delivering those applications via a virtual desktop changes the equation because the graphics run in the data center, rather than locally on a user's device. This makes the traditional approaches to acceleration no longer feasible.

To address these limitations, major VDI players such as VMware, Citrix and Microsoft have added software GPU to their products. Software GPU requires a special graphics driver be installed within the virtual machine (VM) to emulate hardware-based acceleration, without the need to install a physical GPU on the host server.

Software GPU has been widely adopted and has generally benefitted everyday applications, mostly those that need only a small amount of graphics and processing power. Even so, software GPU still relies on the host's CPU to do the work, which can affect server performance and make it unsuitable for high-end, graphic-intense programs such as computer aided design (CAD) applications. In fact, under certain circumstances, software GPU can actually worsen the user's experience and diminish the scalability benefits that drive shops to adopt VDI in the first place.

Offloading graphic processing

To meet the needs of the power apps not suited to software GPU, VDI vendors have been turning back to the good old days of graphic acceleration and are once again incorporating hardware GPU into their virtual desktop offerings. In this scenario, one or more GPUs designed specifically for VDI are installed on the host server. The GPU processing for the virtual desktop is then offloaded to those GPUs, paving the way for CAD-like programs, gaming applications and other video-intense operations.

Two primary approaches have emerged for offloading graphic processing. The most commonly implemented is shared GPU. In this scenario, the physical GPUs are virtualized and shared across multiple VMs. A graphics driver runs in each VM and communicates with a vendor-specific GPU driver in the hypervisor.

Although this approach has proven to be an effective strategy, it's usually limited to applications that have specific versions of the DirectX or OpenGL graphic rendering APIs. Fortunately, many apps have these.

Another approach to offloading graphics processing is GPU pass-through. Pass-through differs from shared GPUs in that each GPU is assigned to a specific VM. In addition, GPU pass-through bypasses the need for a driver at the hypervisor level. Instead, it provides a direct path between the VM driver and the GPU. This approach offers high-performing acceleration for even the most graphic-intensive applications. It does come with a hefty price tag, however, and there are limits on the number of VM/GPU pairings you can support.

Be sure to carefully evaluate your needs before deciding on hardware. That said, the last thing you want are VMs that underperform and fail to deliver desktops that keep your users productive and happy.

Next Steps

How VMware and Citrix GPU options differ

Dig Deeper on Virtual desktop infrastructure and architecture