1 • Full GPU Resource Utilization • Cad/Cam/PLM GPU Requirements Per Application • Gaming Client/Server VM Single Session Power • HPC/Compute Users 2 • High Burst GPU Multi-Session Or Utilization App Remoting • Designer apps • Data Visualization Professional Users 3 • Minimal GPU Utilization • Data Entry/LOB • Web Browser Knowledge Worker User Scale
Virtualization Options with Hyper-V Azure’s Initial Offering SOFTWARE GPU PARAVIRTUALIZATION HARDWARE PASS-THROUGH (WARP) (RemoteFX - vGPU) (Discrete Device Assignment) MS vGPU MS vGPU IHV IHV WARP WARP Driver Driver Driver Driver 1 1 1 CPU GPU GPU GPU 2 2 2 3 3 3
Configuration Powershell Commands VM Preparation #Set automatic stop action to TurnOff Set-VM -Name $vm -AutomaticStopAction TurnOff #Enable Write-Combining on the CPU Set-VM -GuestControlledCacheTypes $true -VMName $vm #Configure 32 bit MMIO space Set-VM -LowMemoryMappedIoSpace 3Gb -VMName $vm #Configure Greater than 32 bit MMIO space Set-VM -HighMemoryMappedIoSpace 33280Mb -VMName $vm Host #Dismount the device as a Display adapter from the Host Dismount-VMHostAssignableDevice -force -LocationPath $locationPath Assignment to VM #Assign the device to the guest VM. Add-VMAssignableDevice -LocationPath $locationPath -VMName $vm Group Policy in VM For Windows Server 2012 R2/Windows Server 2016 only: Open the Group Policy Editor: gpedit.msc • for Remote Navigate the tree: Computer Configuration -> Administrator Templates -> Windows Components -> • Desktop Remote Desktop Services -> Remote Desktop Session Host -> Remote Session Environment -> Use the hardware default graphics adapter for all Remote Desktop Services sessions Configure the Policy to be "Enabled" •
Hyper-V Manager Powershell Commands Configure the Guest VM • Get-VMRemoteFx3dVideoAdapter [-VM] <VirtualMachine[]> [<CommonParameters>] • Set-VMRemoteFx3dVideoAdapter [-VMName] <string[]> [[-MonitorCount] <byte>] [[-MaximumResolution] <string> {1024x768 | 1280x1024 | 1600x1200 | 1920x1200 | 2560x1600}] [[-VRAMSizeBytes] <uint64> {67108864 | 134217728 | 268435456 | 536870912 | 1073741824}] [- Passthru] [-ComputerName <string[]>] [-WhatIf] [-Confirm] [<CommonParameters>] Example: Set-VMRemoteFX3dVideoAdapter mytestvm 2 1920x1200 1024MB Host Hyper-V • Get-VMRemoteFXPhysicalVideoAdapter [[-Name] <string[]>] [- ComputerName <string[]>] [-Credential <pscredential[]>] [<CommonParameters>] • Set-VMRemoteFx3dVideoAdapter [-VM] <VirtualMachine[]> [[- MonitorCount] <byte>] [[-MaximumResolution] <string>] • [[-VRAMSizeBytes] <uint64>] [-Passthru] [-WhatIf] [- Confirm][<CommonParameters>]
4:2:0 4:4:4
NV6 NV12 NV24 NC6 NC12 NC24 NC24r Cores 6 12 24 6 12 24 24 (E5-2690v3) (E5-2690v3) (E5-2690v3) (E5-2690v3) (E5-2690v3) (E5-2690v3) (E5-2690v3) GPU 1 x M60 GPU 2 x M60 GPU 4 x M60 GPU 1 x K80 GPU 2 x K80 GPU 4 x K80 GPU 4 x K80 GPU (1/2 Physical (1 Physical (2 Physical (1/2 Physical (1 Physical (2 Physical (2 Physical Card) Card) Cards) Card) Card) Cards) Cards) Memory 56 GB 112 GB 224 GB 56 GB 112 GB 224 GB 224 GB Disk ~380 GB SSD ~680 GB SSD ~1.5 TB SSD ~380 GB SSD ~680 GB SSD ~1.5 TB SSD ~1.5 TB SSD Network Azure Azure Azure Azure Azure Azure Azure Network Network Network Network Network Network Network + (RoCE) S6839 - Leveraging Microsoft Azure's GPU N-Series for Compute Workloads and Visualization
Feature RemoteFX vGPU DDA Scale 1 GPU to Many VMs 1 or more GPU’s to 1 VM App Compatibility DX 11.1, OpenGL 4.4, OpenCL 1.1 All GPU Capabilities provided by vendor (DX 12, OpenGL, CUDA, etc) AVC444 Enabled By Default (Win10/Srv2016) Available through Group Policy (Win10/Srv2016) GPU VRAM Up to 1 GB VRAM GPU GPU Driver in Guest RemoteFX 3D Adapter Display Driver GPU Vendor Driver (Nvidia) (Microsoft) Guest OS Support W7sp1, Win10, Server 2012r2, Server Linux, Windows 10, Server 2012r2*, 2016 Server 2012 Hypervisor Microsoft Hyper-V Host OS Availability Server 2012r2, Server 2016, Windows 10 Server 2016 GPU Hardware “Enterprise” GPUs ( Quadro, GRID) Server Hardware No Special requirements Modern Server, exposes IOMMU to OS (usually SR-IOV compliant hardware)
https://blogs.msdn.microsoft.com/rds/2014/11/05/remotefx-vgpu-updates-in- windows-server-next/ http://social.technet.microsoft.com/wiki/contents/articles/31771.experience- guide-for-enabling-opengl-support-for-vgpu-in-server-2016.aspx https://blogs.msdn.microsoft.com/rds/2016/01/11/remote-desktop-protocol-rdp-10-avch-264- improvements-in-windows-10-and-windows-server-2016-technical-preview/ https://technet.microsoft.com/en-us/library/mt608570.aspx http://blogs.technet.com/b/virtualization/archive/2015/11/19/discrete-device- assignment.aspx http://blogs.technet.com/b/virtualization/archive/2015/11/20/discrete-device- assignment-machines-and-devices.aspx http://blogs.technet.com/b/virtualization/archive/2015/11/23/discrete-device-assignment- gpus.aspx https://github.com/Microsoft/Virtualization-Documentation/tree/master/hyperv- samples/benarm-powershell/DDA
Recommend
More recommend