NVIDIA Leaps Ahead with Virtual GPUs and Developer SDKs for Turing
NVIDIA has been working on new software and hardware platforms that make workstation virtualisation practical, reliable and fast enough for production, and make the new Turing architecture accessible to users and developers.
Using NVIDIA's Quadro visual computing platform and Quadro Virtual Data Center Workstation (Quadro vDWS) software, users can now deliver a high performance virtual workstation from the data centre or cloud to any device. NVIDIA has also upgraded its RTX development platform with new AI, ray tracing and simulation SDKs that graphics software developers can use to take advantage of the Turing architecture announced at SIGGRAPH 2018.
Virtualising Multiple-GPU Performance
The most recent updates to the NVIDIA Quadro vDWS give it one of the highest performance levels currently available for virtual workstations used to accelerate graphics and compute workflows. The increase is due to the access that Quadro vDWS gives users to two Tesla V100 Tensor Core GPUs, instead of a single Tesla V100.
Through this multiple-GPU power and performance, Quadro vDWS has been developed to support users working remotely on most device types, while their designs and intellectual property remain secured in a data centre. Specifically, people working on remote, virtual workstations can render photoreal visualisations almost twice as fast, and simulations can be completed several times faster with the two Tesla V100 GPUs compared to a CPU-only system.
NVIDIA Virtual GPU Software
NVIDIA virtual GPU software, which is used to oversee vGPU reliability and manage operations, has also been released in a new edition and gives users control over a lot of power through functionality such as VM aggregation, migration and choice of GPU.
With Quadro vDWS and GRID software, for example, an IT team can now migrate live, NVIDIA GPU-accelerated virtual machines (VMs) without impacting users, requiring extra resources or scheduling downtime. This change is owed to the addition of VMware's Vmotion, which enables the live migration of running virtual machines from one physical server to another with continuous service availability and transaction integrity.
Also, Quadro vDWS can be used to run multiple-GPU workloads by aggregating the power of up to four NVIDIA Tesla GPUs in a single VM. Such a machine would support most graphics- and compute-intensive rendering, simulation and design workflows. GPU sharing across multiple VMs is also supported. Red Hat will be the first virtualisation platform to include this capability with its Red Hat Enterprise Linux 7.5 and Red Hat Virtualization 4.2 KVM release.
The software upgrade also affects NVIDIA low-profile, single-slot Tesla T4 GPUs, resulting in twice the framebuffer in the same form factor as the previous generation. The Tesla T4 GPU is a real-time, multi-precision inference accelerator suited to applications that use AI, powered by the new NVIDIA Turing Tensor Cores and built as a 70-watt, small PCIe package. Optimised for scale-out servers, when combined with multi-GPU support, the new 70W Tesla T4 can run workflows in a virtual desktop infrastructure environment, including rendering, simulation and design.
GPU-accelerated Deep Learning Containers
Further to AI workloads on VMs, the NVIDIA GPU Cloud (NGC) makes GPU-accelerated deep learning containers available to researchers who use TensorFlow, PyTorch, MXNet, TensorRT and other machine learning software libraries. These containers are now tested with the new release of Quadro vDWS and come with NVIDIA CUDA Toolkit, NVIDIA deep learning libraries and an operating system.
Ouissame Bekada, a system, virtualisation and storage engineer at Dassault Systèmes noted, “In the past, GPU virtualisation was limited to developers on remote sites and automated testing, where a little planned downtime is acceptable. Having vMotion support on NVIDIA virtual GPU means we can now expand virtualisation to our production environments, where failure and downtime is not an option. Patching, load balancing and upgrades of hardware and software have become simple, and end-users don’t notice any service interruption.”
The new capabilities were announced at the GPU Technology Conference in Europe that took place 9-11 October in Munich, Germany. One of NVIDIA's demonstrations showed how, with multi-GPU support in a single VM, users can bring up multiple applications that rely on compute and graphics in the VM, including SolidWorks Visualize to run a rendering workflow. Another demo used ANSYS Discovery Live - instant 3D simulation and geometry modelling software used for design exploration - to run real-time, interactive simulations. The demos ran Quadro vDWS software on two Tesla V100 GPUs.
Support for multi-GPU, VMware VMotion and NGC containers is expected by November 2018. Tesla T4 support with NVIDIA vGPU software is expected by the end of the year.
NVIDIA RTX Development Platform
NVIDIA has upgraded its RTX development platform with new AI, ray tracing and simulation SDKs that developers can use to take advantage of the new Turing architecture announced at SIGGRAPH 2018 in August when designing fast, professional-grade software packages for design, physics-based simulations and visual effects. At Adobe MAX in Los Angeles 15-17 October, NVIDIA is demonstrating NVIDIA RTX GPUs supporting real-time photorealistic design and AI-enhanced graphics.
The RTX platform, running on high performance hardware, comprises new software APIs and SDKs for developers building tools capable of accelerating and enhancing graphics, photography, imaging and video processing. These tools bring ray tracing, AI-accelerated functionality, rasterisation, simulation and asset interchange formats to applications.
The RTX Platform's compute power for physics-based simulations that accurately model how objects interact in the real world, comes from some of NVIDIA's best known APIs, developed over the last 10 years, including PhysX, FleX and CUDA 10.
However for ray tracing, RTX-capable GPUs include dedicated ray tracing acceleration hardware, and also use a new acceleration structure and GPU rendering pipeline to support real-time ray tracing in games and other graphics applications. Developers can access ray tracing acceleration through NVIDIA's OptiX API, the Microsoft DXR API enhanced with NVIDIA ray tracing libraries, and the upcoming Vulkan ray tracing API.
To add AI tools to graphics and video processing applications, the NVIDIA NGX SDK is a new deep learning-based software stack for building AI-based functions directly into applications with pre-trained networks. It uses Tensor Cores for efficiency of operations, and needs an RTX-capable GPU.
Shading and Rendering
The Turing architecture’s new Streaming Multiprocessor includes various shading systems for rasterisation – which converts vector graphics format images into raster images stored as pixels – plus functions that accelerate graphics pipelines. Mesh shading, for example, improves NVIDIA’s geometry processing architecture with a new shader model for the vertex, tessellation and geometry shading stages of the graphics pipeline.
Mesh shading has new algorithms for synthesising geometry and managing level of detail, and its flexible, efficient approach to computing geometry can support many more objects per scene by shifting object list processing off the CPU and into parallel GPU mesh shading programs.
Variable Rate Shading (VRS) allows you to control the shading rate dynamically, by combining a shading-rate surface and a per-triangle value. VRS means developers can shade more efficiently and improve the frame rate by limiting work only to regions of the screen where full resolution shading is likely to improve image quality. So far VRS-based algorithms can vary shading based on content level of detail - Content Adaptive Shading, rate of content motion - Motion Adaptive Shading, and Foveated Rendering that uses lens resolution and eye positionfor VR applications.
Texture-space shading shades objects in a private coordinate space called a texture space that is saved to memory. Pixel shaders then sample from that space instead evaluating results directly. Caching the shading results in memory and reusing or resampling them avoids duplicating shading work and allows the use of different sampling approaches that improve quality.
Multi-View Rendering renders multiple views in a single pass, even if the views are based on completely different origin positions or view directions. The compiler automatically factors out view independent code, but identifies view-dependent attributes to optimise the execution.
When pipelines and application workflows become complx, standard file formats make asset interchange between applications much easier. In modern pipelines, digital assets like geometry, materials and shader definitions need to transfer across applications but also maintain fidelity.
Consequently the RTX Platform supports two of the main industry standards for asset interchange - Pixar's Universal Scene Description, USD, and the open-source NVIDIA Material Definition Language, MDL. USD's tools handle reading, writing, editing and quick previews of 3D geometry and shading. Adobe, Allegorithmic and Epic Unreal Studio have adopted NVIDIA MDL, which allows developers to build a library of materials once for use across all applications in the workflow. www.nvidia.com