GPU virtualization lets you deliver graphics-intensive applications without sacrificing performance, but the options on the market from VMware and Citrix differ. XenServer natively supports GPU virtualization, but VMware's offerings don't.

As devices become more powerful, so do their users. Today, many workers want access to 3-D applications and other technology that requires GPU support.

Graphics processing unit (GPU) virtualization takes things one step further by offloading that processing power. With the increase in users' needs and requirements, virtualized GPU technology has begun to take off. IT is now tasked with considering a number of different technologies and vendors that support GPU virtualization. But what exactly do your users need? And which vendors offer what kind of virtual GPU technology?

With all the options out there and more advancement every day, it's time to get this straight.

Do you need GPU virtualization?

The first thing you need to decide is whether users require some extra GPU power. Then, determine what kind of support you need.

In a virtual desktop infrastructure (VDI), GPU virtualization has opened a lot more doors for the types of applications you can run on a virtual desktop, such as 3-D, CAD, video editing and other applications. Power users who need access to those apps would greatly benefit from a virtualized GPU and they would see far better performance from those applications than before they had it.

But not all end users will need GPU virtualization. Some applications running on a physical or virtual desktop would benefit even more from protocol offload rather than GPU offload. Take a look at your environment and user base before you jump into GPU virtualization.

If it turns out that a large number of VDI users do need more GPU power, there are a few ways to implement GPU virtualization. There's dedicated GPUs, shared virtual GPUs and GPU pass-through. GPU sharing or high-density virtual GPUs might be adequate for workers with lower-end graphic needs on basic business applications, whereas a dedicated GPU would be better for workers with serious 3-D requirements.

Comparing virtual GPU features from Citrix and VMware

The two most popular enterprise VDI products offer features that are based on Nvidia's GRID technology. So how do they differ?

Citrix XenDesktop GRID vGPU. Some experts say Citrix's GPU virtualization features outrun the others because the company came in on the ground floor with Nvidia support. In Citrix XenDesktop 7.1, Citrix natively supports vGPU technology with Nvidia GRID, including pass-through support and GPU sharing. Just know that Nvidia doesn't certify its cards on too many servers and the GRID vGPU feature is only available on XenServer 6.2 with Service Pack 1.

Once you set up vGPU for XenDesktop virtual machines (VMs), your main decision will be how to place the GPUs. You can dedicate virtual GPUs to single GPUs, which would be a low GPU density allowing for high application performance; or you could share multiple virtual GPUs on one physical GPU, which provides a high GPU density but lower performance. Again, that depends on the application and user needs.

Then, the GRID cards offer four different types of vGPUs. Each one differs based on the number of shared users that are supported and the amount of memory they need. The GRID cards also offer GPU pass-through, which is the only type of GPU that XenApp can use.

Soft 3D, good for limited 3-D graphics rendering if you're in a pinch, emulates a GPU in the software.

You can get a high user density with vSGA because it breaks up the GPU and allocates RAM to each VM. It also offers a type of failover, since the feature uses the same driver as Soft 3D and can automatically switch to Soft 3D when needed. In vSGA's settings, you can choose whether to use only the hardware GPU or allow the automatic switch to Soft 3D.

For the best desktop performance, VMware has vDGA, which dedicates the GPU to a specific virtual desktop. It also uses the highest performing standards for DirectX and OpenGL.

One interesting thing to note is that Citrix XenDesktop can also use vSGA and vDGA when it's hosted on VMware ESXi because Citrix VDI works on multiple hypervisors.

Join the conversation

4 comments

Register

I agree to TechTarget’s Terms of Use, Privacy Policy, and the transfer of my information to the United States for processing to provide me with relevant information as described in our Privacy Policy.

Please check the box if you want to proceed.

I agree to my information being processed by TechTarget and its Partners to contact me via phone, email, or other means regarding information relevant to my professional interests. I may unsubscribe at any time.

Your password has been sent to:

Please create a username to comment.

Personally I love using a pc with exceptional graphics. GPU virtualization on my network enables me to share seamless graphic experience with multiple users.
I have always preferred to use NVIDIA GRID vGPU for my virtualization solutions. Its technology provides exceptional graphics performance among users on my network. With its improved technology, NVIDIA GRID vGPU offers enhanced data and IP security which is vital for users sharing the network, and can be accessed from anywhere.

As more enterprises embrace virtualization for a variety of reasons, including controlling IT costs, users will increasingly demand high-performance, 3D graphics from their virtual desktops. As you mentioned, prior to NVIDIA’s GRID, there were a couple of work arounds to provide high performance graphics for virtual desktops. The basic problem is that GPUs were never designed to be virtualized or shared. That’s why NVIDIA specifically designed and created GRID - a way for GPUs to to serve multiple concurrent users without performance or latency issues.

I'm tempted to try Nvidia Grid, but honestly: I get good mileage from using a Titan Z in a 2008 Server and using Remote FX with shared GPU for Windows 7 Enterprise desktop virtual machines: in my testing I was blown away. I was able to set up 30 Windows 7 Enterprise 64-Bit virtual machines and have each play a full screen DVD movie simultaneously-- GPU load on the dual Titan Z reached a peak of 18% and the CPU in my i7 5960x based 2008 R2 Server rarely exceeded 3%... I then started launching Google Earth on numerous desktops and the peak GPU usage reached 35%... This was just with shared vGPU using Remote FX through a Gigabit LAN and I'm like, why bother with Grid? I hope to try it one day, using Horizon but the costs are way up there and most of my clients will balk at it.