shared among all of the VMs, there will be a limit in terms of the performance
improvements that are seen, based on the type of workload and the characteristics of
the card. One key consideration when you virtualize the GPU is the amount of
graphical memory each VM will need. You can’t overcommit GPU memory to achieve
the 12:1 ratio. You would need to ensure that the graphics card has sufficient video
RAM for all of the VMs. Windows Server 2016 RemoteFX enables a specific amount of
VRAM to be assigned to virtual machines up to 1GB, which is a fourfold increase from
the 256MB maximum that was dynamically set based on the resolution and number of
displays configured in Windows Server 2012 R2. The amount of memory can be
configured from the RemoteFX 3D Video Adapter configuration under the Settings of
the VM or using the Set-VMRemoteFx3dVideoAdapter cmdlet with the -VRAMSizeBytes
parameter. Windows Server 2016 also allows you to set the number of monitors and
the resolution independent of the VRAM.
The requirement of a GPU in the Hyper-V server in the Windows 2008 R2 SP1
implementation of RemoteFX was a challenge for many environments that
traditionally did not have powerful GPUs in their servers. Windows Server 2012
introduced a basic software rasterizer that allows RemoteFX capabilities in VDI and
session-based environments that do not have physical GPUs for some types of
graphical capability; however, for rich graphics rendering, you will still require a
physical GPU to virtualize.
To use RemoteFX vGPU, the graphics card must support DirectX 11.0 or newer,
OpenGL 4 or newer, and it must have a WDDM 1.2 driver or newer. Microsoft has a
good blog at http://blogs.msdn.com/b/rds/archive/2013/11/05/ gpu-requirements-
for-remotefx-on-windows-server-2012-r2.aspx that walks through some of the GPUs it
has tested and recommends.
Once all of the requirements are met, the GPU is enabled for RemoteFX use through
the Hyper-V settings in the Physical GPUs section. Figure 11.14 shows my
environment that leverages an AMD FirePro V5900 card.