2015-11-12

(this is a guest post by Tenox)

I spent a day evaluating NVIDIA GRID K1 card, which is a GPU for high end, graphics intensive desktop virtualization (VDI) deployments. Otherwise called vGPU. What does it actually mean?

As you can see on the stock photo, the card doesn’t have VGA, HDMI, DVI, DP or any video output port what so ever. The output happens purely through Remote Desktop Protocol (RDP) extension called RemoteFX. On VMware and Citrix it works little bit different but I will be covering Windows / Hyper-v installation only.

The GRID K1 is somewhat similar to Quadro card so the driver is not your usual GeForce package, but the experience is quite similar nevertheless. Upon installation you see 4 different physical GPUs in Device manager:

This works similarly to having multiple CPU cores that show up as separate processors in the OS. Here is a first fun fact: you can’t actually use any of these directly, as they simply have no output port and can’t display any graphics… Instead, you have to use Hyper-v with RemoteFX extension:

Then for each guest machine, you add a RemoteFX graphics card as hardware:

In order to use RemoteFX you need to Remote Desktop (RDP) to the guest machine. The protocol is fortunately available since version 7.1 so even Windows 7 can use it. However only Enterprise editions of Windows support it.

Inside the guest VM you see a virtual RemoteFX Display Adapter in the Device Manager:

And as you can see Direct3D is available and enabled. Note that this is over RDP to a VM! The VM’s console curiously displays following message:

Hard to show on static screenshots, but I have to say that RemoteFX user experience is noticeably better compared to a regular RDP. Everything works smoother and faster, scrolling pages, moving windows is a snap. You can play videos / YouTube, etc. But I was more interested in real use case which are high end 3D applications. So I proceeded to install Steam…

Yes! this is GTA V running over Remote Desktop in a VM!

The frame rate sucks quite considerably, even in safe mode, but it was playable and quite responsive (no lag). I actually spent couple of hours going through it and except for low FPS had no issues.

I also spun up this Wyse Thin Client terminal:

disconnected my RDP session and reconnected from the terminal… poof the game was still going:

I even got sound out of the little thing.

I suspect that the low FPS is rather to do with small GPU horse power and vRAM assigned rather that with remote viewing or NVIDIA itself. Unfortunately in Hyper-v it’s impossible to control or tune assignment of GPU resources to a particular VM beyond on/off. The K1 card supports 32 users, so I was only getting 1/32th power and RAM. Perhaps I could have spawned 32 VMs with GTA. Or Call Of Duty multiplayer….

In ending notes I have to conclude that this is a rather interesting technology. Maybe not future of gaming, but definitely some professional 3D applications will benefit from virtualization and ability to connect and reconnect from anywhere, or even live migrate workloads between physical servers.

These cards are rather expensive so hopefully campers won’t get them any time soon.

Show more