full gpu resource utilization - gtc on-demand featured...

15

Upload: dothuan

Post on 08-Mar-2018

228 views

Category:

Documents


1 download

TRANSCRIPT

• Full GPU Resource Utilization

• Cad/Cam/PLM

• Gaming

• HPC/Compute

1Power

Users

• High Burst GPU

Utilization

• Designer apps

• Data Visualization

2Professional Users

• Minimal GPU

Utilization

• Data Entry/LOB

• Web Browser

3Knowledge WorkerG

PU

Req

uir

em

en

ts P

er

Ap

plica

tio

n

User Scale

Sin

gle

Sess

ion

Clien

t/Serv

er

VM

Mu

lti-

Sess

ion

Or

Ap

p R

em

oti

ng

Virtualization Options with Hyper-V

HARDWARE PASS-THROUGH (Discrete Device Assignment)

IHV Driver

IHV Driver

GPU GPU 1

2

3

PARAVIRTUALIZATION (RemoteFX - vGPU)

MS vGPUDriver

MS vGPUDriver

GPU1

2

3

Azure’s Initial Offering

SOFTWARE GPU(WARP)

WARP WARP

CPU 1

2

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 Remote

Desktop

For Windows Server 2012 R2/Windows Server 2016 only:• Open the Group Policy Editor: gpedit.msc• Navigate the tree: Computer Configuration -> Administrator Templates -> Windows Components ->

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

(E5-2690v3)

12

(E5-2690v3)

24

(E5-2690v3)

6

(E5-2690v3)

12

(E5-2690v3)

24

(E5-2690v3)

24

(E5-2690v3)

GPU 1 x M60 GPU

(1/2 Physical

Card)

2 x M60 GPU

(1 Physical

Card)

4 x M60 GPU

(2 Physical

Cards)

1 x K80 GPU

(1/2 Physical

Card)

2 x K80 GPU

(1 Physical

Card)

4 x K80 GPU

(2 Physical

Cards)

4 x K80 GPU

(2 Physical

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

Network

Azure

Network

Azure

Network

Azure

Network

Azure

Network

Azure

Network

Azure

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

(Microsoft)

GPU Vendor Driver (Nvidia)

Guest OS Support W7sp1, Win10, Server 2012r2, Server

2016

Linux, Windows 10, Server 2012r2*,

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