Figure 11.15 RemoteFX 3D video adapter options for a virtual machine
Windows Server 2016 introduces an alternative to RemoteFX for the rich graphical
capabilities discussed in Chapter 2, “Virtual Machine Resource Fundamentals.”
Discrete Device Assignment (DDA) provides the ability to map PCI-Express devices
directly to specific virtual machines (pass-through). I mention it again here because
DDA is primarily aimed at two types of PCI-Express devices: NVMe storage devices
and graphics cards, of which the latter is of interest here. The graphics card vendor has
to support DDA through its graphics driver, so not all graphics cards work with DDA.
Which should be used, DDA or RemoteFX?
Remember that with Windows Server 2016 DirectX 11.1, OpenGL 4.4 and OpenCL 1.1
are all supported by RemoteFX for use within the VM. Additionally, up to 1GB of
VRAM can be applied per VM with support for guests running Windows 7 and above
or Windows Server 2012 R2 and above.
With DDA passing a GPU to a VM, it enables the native GPU driver to be used within
the VM and all capabilities such as DirectX 12, CUDA, and so on. With DDA, you
cannot share the GPU between VMs; it is assigned directly to a specific VM.
Additionally, the guest must be Windows 10, Windows Server 2012 R2, Windows
Server 2016, or Linux. The Azure N-Series VMs will use the 2016 DDA functionality to
enable CUDA as well as to provide graphics acceleration within the VMs.
Generally, use RemoteFX for scale where RemoteFX projects the GPU features