S5006 YOUR HORIZON VIEW DEPLOYMENT

IS GPU READY, JUST ADD GRID Jeremy Main Senior Solution Architect - GRID 1 Overview 2 Prerequisites AGENDA 3 Differences between vSGA and vDGA 4 vSGA setup and configuration 5 vSGA verification and tuning What is a GPU?

In a virtual world the CPU has been asked to be all things from vCPU to networking to storage, and GPU! Segmenting the User Population

DESIGNER

Tier 1 (e.g. design engineers) Top rendering performance (dedicated GPU: vDGA)

POWER USER

Tier 2 (viewing/editing of 3D drawings) Shared GPU: vSGA, or possibly vDGA KNOWLEDGE WORKER

Tier 3 (typical knowledge workers) Shared GPU: vSGA Importance of a GPU COMMERCIAL MARKETS MUST HAVE 3D Engineering & DESIGNERS Design Apps PLM & Volume Design Media Rich Web 25M

POWER USERS 200M

KNOWLEDGE WORKERS NEW OPPORTUNITY NEW OPPORTUNITY 400M INCREASINGLY NICE TO HAVE Office Productivity Medical Records TASK WORKERS 100M MARKET MARKET SERVED SERVED TODAY DESIGNERS NVIDIA GRID K2

POWER USERS NVIDIA GRID K1 Performance

GPU 4 Kepler GPUs 2 High End Kepler GPUs

KNOWLEDGE WORKERS CUDA Cores 768 (192/GPU) 3072 (1536/GPU)

Memory Size 16GB DDR3 (4GB/GPU) 8GB GDDR5 (4GB/GPU)

Max Power 130 W 225 W

Number of Users Up to 32 Up to 16

1 Number of users depends on software solution, workload, and screen resolution Differences between vSGA and vDGA GPU Pass-through Fundamentals

GPU Pass-through

! 1:1 assignment of physical GPU to a guest VM VIRTUAL MACHINEVIRTUAL VIRTUAL GuestMACHINE OS ! NVIDIA driver is resident in the guest GuestMACHINE OS AppsAppsGuest OS Apps Remote NVIDIAGraphicsRemote ! Can co-exist alongside vSGA and non GPU enabled guests Graphics DriverNVIDIA DriverNVIDIA Driver

Hypervisor

DirectPath I/O

GPU VMware ESXi 5.5 and vDGA

• Supports all versions of DirectX, OpenGL and CUDA

• No .vib driver is required on the ESX server host

• PCI Pass thru must be enabled on the ESX server

• NVIDIA driver must be installed on the guests GPU Virtualization – vDGA

NVIDIA App App App VDAApp Accelerated Capture GUEST OS

Virtual Virtual Virtual Virtual NVIDIA Client

SOFTWARE SOFTWARE Driver Driver Driver Driver Driver

VIRTUAL MACHINE

vCPU vMemory vStorage vNetwork GPU

ESXi Hypervisor NVIDIA VIRTUALIZATION VIRTUALIZATION Pass-Through

GRID K1 GRID K2 CPU Memory Storage Network GPU 2000-6000

HARDWARE HARDWARE Physical Server Quadro K5000 VMware ESXi 5.5 and vSGA

• GPU is gets “shimmed” to the VMs

• VMware software adapter installed on guests

• NVIDIA GRID .vib driver installed on the ESX host

• API support up to DirectX 9 and OpenGL 2.1

• Support for vMotion GPU Virtualization - vSGA

App App App VDAApp VMware Software View Guest Adapter Client

Software Software VMware ESXi Virtual Virtual Virtual Virtual Virtual Driver Driver Driver Driver Driver

VIRTUAL MACHINE NVIDIA GRID software from NVIDIA

vCPU vMemory vStorage vNetwork GPU

Virtualization vSphere ESXi Hypervisor NVIDIA VIB Driver GRID K1, K2

CPU Memory Storage Network GPU Hardware Physical Server Key Differences vSGA vDGA ! Multi-users / GPU ! One VM / GPU ! Shimmed Driver ! NVIDIA driver ! DirectX 9 ! DirectX 9, 10 and 11 ! OpenGL 2.1 ! OpenGL 4.3 Key Differences

vGPU (coming soon) ! Multi-users / GPU vSGA ! NVIDIA Driver vDGA ! Multi-users / GPU ! DirectX 9, 10 and 11 ! One VM / GPU ! Shimmed Driver ! OpenGL 4.3 ! NVIDIA driver ! DirectX 9 ! DirectX 9, 10 and 11 ! OpenGL 2.1 ! OpenGL 4.3 ! vSGA setup and configuration vSGA Installation - .vib

! Download .vib from the NVIDIA Driver Download page ! Extract NVIDIA-Vmware-x86_64-<>-bundle.zip from .zip file ! Copy NVIDIA-Vmware-x86_64-<>-bundle.zip to ESXi host ! Put ESXi host in Maintenance mode ! Install .vib using “esxcli software vib install –d” with full path to bundle

~ # esxcli software vib install -d /vmfs/volumes/<>/NVIDIA-VMware-x86_64-319.65-1OEM. 550.0.0.1331820-bundle.zip Installation Result Message: Operation finished successfully. Reboot Required: false VIBs Installed: NVIDIA_bootbank_NVIDIA-VMware_ESXi_5.5_Host_Driver_319.65-1OEM.550.0.0.1331820 ! ! Reboot the ESXi host vSGA Post .vib Installation

! Confirm xorg is running

~ # /etc/init.d/xorg status Xorg is running

! Display VMs known by the host

~ # gpuvm Xserver unix:0, PCI ID 0:8:0:0, GPU maximum memory 4173824KB GPU memory left 4173824KB. Xserver unix:1, PCI ID 0:9:0:0, GPU maximum memory 4173824KB GPU memory left 4173824KB. Xserver unix:2, PCI ID 0:134:0:0, GPU maximum memory 4173824KB GPU memory left 4173824KB. Xserver unix:3, PCI ID 0:135:0:0, GPU maximum memory 4173824KB GPU memory left 4173824KB. ! vSGA VM Management Configuration

! Enable existing VMs by modifying the video card setting in vCenter

! Select “Enable 3D Support”

! 3D Renderer option remains set to “Automatic”

! Memory size does not need to be modified ! Modify Horizon View vSGA enabled VM pool settings

! Change “Allow users to choose protocol” to “No”

! Set “3D Renderer” to “Hardware”

! Selecting “Configure”, change VRAM to 512MB

! VRAM memory is 50% GPU memory and 50% system memory, remember for sizing! ! ! Continue to apply the existing pool settings and finally “Finish” vSGA verification Verification on ESXi Host

! Parse the VM log file to confirm vSGA rendering is operational

~ # cat /vmfs/volumes/<>/<>/vmware.log | grep “OpenGL” … mks| I120: OpenGL Version: “3.2.0 NVIDIA 319.65” (3.2.0) … mks| I120: OpenGL Vendor: “NVIDIA Corporation” … mks| I120: OpenGL Renderer: “Quadro FX GRID K2/PCIe/SSE2”

! If there is no OpenGL information, check for software renderer

~ # cat /vmfs/volumes/<>/<>/vmware.log | grep “llvmpipe” … mks| I120: VMiopLog notice: <> vmiop started – llvmpipe

! End-User Experience Tuning ! For high end graphical and 3D workloads: ! Use high-performance thin client ! Tera1 chip supports up to 30fps vs. Tera2 chip supports up to 60fps ! Or use a modern Core i3 or better Windows PC ! Networking is critical, some PCoIP use cases spike to 70Mbps ! Optimize PCoIP to allow max 120fps, 30fps is the default ! Enable “Disable Build-To-Lossless to reduce overall PCoIP traffic ! Under certain extreme cases with CAD apps, change MaxAppFrameRate to “0” ! HKLM\Software\VMware, Inc.\VMware SVGA DevTap\MaxAppFrameRate ! Set to: dword:00000000 (default is 30) ! Storage and data access ! Proximity to data, VLANs, IOPS ! Solid State!

GRID WEBSITE www.nvidia.com/vdi

SIGN UP FOR THE MONTHLY GRID VDI NEWSLETTER http://tinyurl.com/gridinfo

GRID YOUTUBE CHANNEL NVIDIA GRID http://tinyurl.com/gridvideos

RESOURCES QUESTIONS? ASK ON OUR FORUMS https://gridforums.nvidia.com

NVIDIA GRID ON LINKEDIN http://linkd.in/QG4A6u

FOLLOW US ON TWITTER @NVIDIAGRID

22