Q. Should I use RemoteFX or Direct Device Assignment in Windows Server 2016?

A. RemoteFX has been a feature of Windows Server since Windows Server 2008 R2 SP1 and one of its capabilities is the virtualization of GPUs in the server to be presented as vGPUs to VMs. 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 1 GB of VRAM can be applied per VM with support for guests running Windows 7 and above or Windows Server 2012 R2.

Direct Device Assignment (DDA) is a new Windows Server 2016 Hyper-V feature which enables PCI-Express devices to be passed directly to a VM, specifically GPUs and NVMe storage devices. 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 etc. 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.

Generally use RemoteFX for scale where RemoteFX projects the GPU features required and use DDA when you need the full capacity of the graphics card and its native drivers, for example when using CUDA cards for computational purposes.