GPU Ray Tracing at the Desktop and in the Cloud. Phillip Miller, NVIDIA Ludwig von Reiche, mental images

Similar documents
Siggraph Asia December 2011

Accelerating Realism with the (NVIDIA Scene Graph)

NVIDIA Advanced Rendering

SIGGRAPH 2011 Vancouver August 8 th, 2011

NVSG NVIDIA Scene Graph

NVIDIA GPU Computing Séminaire Calcul Hybride Aristote 25 Mars 2010

NVIDIA Case Studies:

PHYSICALLY BASED RENDERING FOR 3DSMAX LIGHTWORKS IRAY + FOR 3DSMAX CASSIE THIBODEAU - NVIDIA PETER DE LAPPE NVIDIA DAVID COLDRON - LIGHTWORKS

CUDA Conference. Walter Mundt-Blum March 6th, 2008

Voxel Cone Tracing and Sparse Voxel Octree for Real-time Global Illumination. Cyril Crassin NVIDIA Research

Real-Time Ray Tracing Using Nvidia Optix Holger Ludvigsen & Anne C. Elster 2010

CS427 Multicore Architecture and Parallel Computing

Enhancing Traditional Rasterization Graphics with Ray Tracing. October 2015

Real - Time Rendering. Graphics pipeline. Michal Červeňanský Juraj Starinský

Advanced Rendering Solutions from NVIDIA

Enabling immersive gaming experiences Intro to Ray Tracing

S5409: Custom Iray Applications and MDL for Consistent Visual Appearance Throughout Your Pipeline

NVIDIA Developer Tools for Graphics and PhysX

OpenGL ES 2.0 : Start Developing Now. Dan Ginsburg Advanced Micro Devices, Inc.

Siggraph Agenda. Usability & Productivity. FX Composer 2.5. Usability & Productivity 9/12/2008 9:16 AM

Enabling the Next Generation of Computational Graphics with NVIDIA Nsight Visual Studio Edition. Jeff Kiel Director, Graphics Developer Tools

Graphics Hardware. Graphics Processing Unit (GPU) is a Subsidiary hardware. With massively multi-threaded many-core. Dedicated to 2D and 3D graphics

Radeon ProRender and Radeon Rays in a Gaming Rendering Workflow. Takahiro Harada, AMD 2017/3

LEVERAGING NVRTC FOR BUILDING OPTIX SHADERS FROM MDL MATERIALS Detlef Röttger, NVIDIA Andreas Mank, ESI Group

CSE 591: GPU Programming. Introduction. Entertainment Graphics: Virtual Realism for the Masses. Computer games need to have: Klaus Mueller

Copyright Khronos Group Page 1

Current Trends in Computer Graphics Hardware

Parallel Programming and Debugging with CUDA C. Geoff Gerfin Sr. System Software Engineer

Next Generation OpenGL Neil Trevett Khronos President NVIDIA VP Mobile Copyright Khronos Group Page 1

Pump Up Your Pipeline

Graphics Hardware. Instructor Stephen J. Guy

Shrinath Shanbhag Senior Software Engineer Microsoft Corporation

NVIDIA T4 FOR VIRTUALIZATION

AN ACCELERATION OF FPGA-BASED RAY TRACER

GPGPU Applications. for Hydrological and Atmospheric Simulations. and Visualizations on the Web. Ibrahim Demir

Parallel Programming for Graphics

Metal for Ray Tracing Acceleration

SIGGRAPH Briefing August 2014

A Quick Guide to Normal Mapping in 3ds max 7

Direct Rendering of Trimmed NURBS Surfaces

Introduction to Computer Graphics. Knowledge basic concepts 2D and 3D computer graphics

developer.nvidia.com The Source for GPU Programming

Seamless Compute and OpenGL Graphics Development in NVIDIA Nsight 3.0 Visual Studio Edition and Beyond 3/20/2013

NVIDIA Tools for Artists

CSE 591/392: GPU Programming. Introduction. Klaus Mueller. Computer Science Department Stony Brook University

Prospects for a more robust, simpler and more efficient shader cross-compilation pipeline in Unity with SPIR-V

NVIDIA DESIGNWORKS Ankit Patel - Prerna Dogra -

CS GPU and GPGPU Programming Lecture 2: Introduction; GPU Architecture 1. Markus Hadwiger, KAUST

Bringing it all together: The challenge in delivering a complete graphics system architecture. Chris Porthouse

Today. Rendering algorithms. Rendering algorithms. Images. Images. Rendering Algorithms. Course overview Organization Introduction to ray tracing

Johannes Günther, Senior Graphics Software Engineer. Intel Data Center Group, HPC Visualization

Introduction to Multicore architecture. Tao Zhang Oct. 21, 2010

SIGGRAPH 2013 Shaping the Future of Visual Computing

NVIDIA Material Definition Language

V-RAY 3.6 FOR SKETCHUP KEY FEATURES

Introduction to Shaders.

Shaders. Slide credit to Prof. Zwicker

Computer Graphics Imagery and simulation by GPU for Automotive Use cases Benoît DESCHAMPS. Imaging Solutions Team Leader - GTC 23/03/2013

Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload)

VMD: Immersive Molecular Visualization and Interactive Ray Tracing for Domes, Panoramic Theaters, and Head Mounted Displays

HOW LEADING-EDGE COMPUTING TECHNOLOGIES ARE HELPING REIMAGINE CITIES OF THE FUTURE. Andrew Rink, AEC Industry Marketing GTC China - November 22, 2018

RealityServer The 3D Web Services Platform

Vulkan 1.1 March Copyright Khronos Group Page 1

CS GPU and GPGPU Programming Lecture 8+9: GPU Architecture 7+8. Markus Hadwiger, KAUST

Streaming Massive Environments From Zero to 200MPH

Cg 2.0. Mark Kilgard

Enhancing Traditional Rasterization Graphics with Ray Tracing. March 2015

PROFESSIONAL VR: AN UPDATE. Robert Menzel, Ingo Esser GTC 2018, March

Comparison of CPU and GPGPU performance as applied to procedurally generating complex cave systems

NVIDIA Parallel Nsight. Jeff Kiel

RAY TRACING: TODAY, TOMORROW AND BEYOND

From Brook to CUDA. GPU Technology Conference

NVIDIA Developer Toolkit. March 2005

A Trip Down The (2011) Rasterization Pipeline

NVIDIA DGX SYSTEMS PURPOSE-BUILT FOR AI

Duksu Kim. Professional Experience Senior researcher, KISTI High performance visualization

Teaching Cg. This presentation introduces Cg ( C for graphics ) and explains why it would be useful when teaching a computer graphics course.

Per-Pixel Lighting and Bump Mapping with the NVIDIA Shading Rasterizer

For Intuition about Scene Lighting. Today. Limitations of Planar Shadows. Cast Shadows on Planar Surfaces. Shadow/View Duality.

V-Ray RT: A New Paradigm in Photorealistic Raytraced Rendering on NVIDIA GPUs. Vladimir Koylazov Chaos Software.

Real-Time Reyes: Programmable Pipelines and Research Challenges. Anjul Patney University of California, Davis

Computer Graphics. - Ray Tracing I - Marcus Magnor Philipp Slusallek. Computer Graphics WS05/06 Ray Tracing I

PERFORMANCE OPTIMIZATIONS FOR AUTOMOTIVE SOFTWARE

Graphics Processing Unit Architecture (GPU Arch)

Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload)

Copyright Khronos Group Page 1. Vulkan Overview. June 2015

Secrets of Parthenon Renderer

Profiling and Debugging Games on Mobile Platforms

Rendering Algorithms: Real-time indirect illumination. Spring 2010 Matthias Zwicker

Sharing Physically Based Materials Between Renderers with MDL

NVIDIA GPU CLOUD PLATFORM UPDATE. NVIDIA 서완석이사

The Ultimate Developers Toolkit. Jonathan Zarge Dan Ginsburg

Ray Tracing with Multi-Core/Shared Memory Systems. Abe Stephens

Parallel Computer Architecture and Programming Final Project

INTRODUCTION TO OPTIX. Martin Stich, Engineering Manager

POWERVR MBX & SGX OpenVG Support and Resources

Today. Rendering algorithms. Rendering algorithms. Images. Images. Rendering Algorithms. Course overview Organization Introduction to ray tracing

What s New with GPGPU?

NVIDIA RESEARCH TALK: THE MAGIC BEHIND GAMEWORKS HYBRID FRUSTUM TRACED SHADOWS

Last Time. Why are Shadows Important? Today. Graphics Pipeline. Clipping. Rasterization. Why are Shadows Important?

Transcription:

GPU Ray Tracing at the Desktop and in the Cloud Phillip Miller, NVIDIA Ludwig von Reiche, mental images

Ray Tracing has always had an appeal

Ray Tracing Prediction The future of interactive graphics is ray tracing. And it always will be :) GPUs are making that future look much closer

Realism versus Interaction a Constant For all visual industries, realism is most often the goal In Film FX realism typically more important than time Innovation decreases time Increasing realism most often consume time gains In Games and Design time more important than realism Realism increases as real-time is maintained Design requires at least 5 to 10 FPS Games requires 30 or 60 FPS (now 120 FPS in stereo) 2010

Realism Realism/Time Speed/Node: Baseline Film FX games design 60 10 5 2 frames per second 1 5 15 30 1 5 15 30 1 3 6 12 1 +1 seconds minutes hour day days NVIDIA s permission required before redistributing 2010

Realism Realism/Time Speed/Node: GPU & Shaders Film FX Ray Tracing plateau games design 60 10 5 2 frames per second 1 5 15 30 1 5 15 30 1 3 6 12 1 +1 seconds minutes hour day days NVIDIA s permission required before redistributing 2010

Real-Time State of the Art

Real-Time State of the Art Real-Time State of the Art

Real-Time State of the Art

Real-Time State of the Art

Real-Time State of the Art

What s behind this level realism A lot of talent (and time) using great tools powered by top end GPUs with custom shaders (CgFX, HLSL, GLSL) managed by a real-time scene graph

No Self Reflection

No Global Illumination

Careful Compositions NVIDIA s permission required before redistributing DeltaGen image courtesy of RTT

Raster Showcase Image courtesy of Autodesk Today Limited to Raster Capabilities Result is tied to the scene High training & cost Intense art time Tomorrow Physically correct Result works any where Far less training and cost Intense computations Ray Traced NVIDIA s permission required before redistributing 2010

Realism Realism/Time Speed/Node: GPU Shaders Film FX Ray Tracing plateau games design 60 10 5 2 frames per second 1 5 15 30 1 5 15 30 1 3 6 12 1 +1 seconds minutes hour day days NVIDIA s permission required before redistributing 2010

Realism Realism/Time Speed/Node: GPU Ray Tracing pre-viz interactive scientific simulation physically correct simulation film FX games design 60 10 5 2 frames per second 1 5 15 30 1 5 15 30 1 3 6 12 1 +1 seconds minutes hour day days NVIDIA s permission required before redistributing 2010

Interactive Ray Tracing Leadership SIGGRAPH 2008 30 FPS proof of concept, on shipping hardware Later published papers on approaches SIGGRAPH 2009 Debuted the OptiX engine and the iray renderer OptiX, iray, RealityServer 3 released 3 months later Early 2010 Design Garage demo in 5 weeks w/ OptiX & SceniX SIGGRAPH 2010 Numerous GPU rendering solutions on display iray in Bunkspeed Shot, OptiX a v2 Now iray in Autodesk 3ds Max 2011, and DS Catia v6 OptiX in Lightworks and numerous private applications Cloud rendering with iray ready to deploy 2010

Public Views on GPU Ray Tracing 3 years ago A GPU can t ray trace 2 years ago NVIDIA can, but we can t 1 year ago Now everyone can This year Next year Now many are You can do it anywhere

NVIDIA Design Garage Demo Photorealistic car configurator in the hands of millions of consumers Uses pure GPU ray tracing Est. 40-50X faster vs. a CPU core 3-4X faster on GF100 than on GT200 Linear scaling over GPUs & CUDA Cores Built on SceniX with OptiX shaders similar to other apps in development Rendering development speed 5 weeks

GPU Computing Overview Broad Adoption GPU Computing Applications Over 250,000,000 installed CUDA- Architecture GPUs CUDA C/C++ Over 90,000 developers Running in Production since 2008 SDK + Libs + Visual Profiler and Debugger OpenCL 1 st GPU demo Shipped 1 st OpenCL Conformant Driver Public Availability (Since April) Direct Compute Microsoft API for GPU Computing Supports all CUDA- Architecture GPUs (DX10 and DX11) Fortran PGI Accelerator PGI CUDA Fortran NOAA Fortran bindings FLAGON Python, Java,.NET, PyCUDA jcuda CUDA.NET OpenCL.NET Over 100,000 GPU Computing Developers Windows, Linux and MacOS Platforms supported GPU Computing spans HPC to Consumer NVIDIA GPU with the CUDA Parallel Computing Architecture 250+ Universities teaching GPU Computing on the CUDA Architecture 2010

Many Programming Approaches in Use iray finalrender Furry Ball Arion Octane V-ray RT GPU OptiX Lightworks, etc. CUDA C, C Runtime CUDA C, C Runtime CUDA C, C Runtime CUDA C, driver API CUDA C, driver API OpenCL CUDA C, driver API with PTX stitching CUDA C, OptiX API

Solutions Vary in their GPU Exploitation Speed-ups vary, but a top end Fermi GPU will typically ray trace 6 to 15 times faster than on a quad-core CPU A GPGPU programming challenge is to keep the GPU busy Gains on complex tasks often greater than for simple ones Particularly evident with multiple GPUs, where data transfers impact simple tasks more Can mean the technique needs to be rethought in how it s scheduling work for the GPU CPU OptiX 2.1 example first tuned for simple, now tuned for complex, with a 30-80% speed increase GPU 2010

Similarities for today s GPU Ray Tracing Performance tends to scale linearly with GPU cores and core clock for a given GPU generation Gains between GPU generations will vary per solution Most scale well across system GPUs, with no need for SLI. Most solutions can distribute rendering, but only some support cluster rendering Scaling efficiency will vary per solution and/or technique Entire scene must fit onto the GPU s memory* geometry, textures, and acceleration structures *not a permanent situation 2010

GPU Computing Application Development Your GPU Ray Tracing Application OEM Renderers (iray) Application Acceleration Engines e.g., OptiX ray tracing engine Foundation Libraries Low-level Functional Libraries Development Environment Languages, Device APIs, Compilers, Debuggers, Profilers, etc. CUDA Architecture 2010

Accelerating Application Development App Example: Auto Styling 1. Establish the Scene = SceniX App Example: Ray Tracing Task 1. Prepare your Scene = your art production path 2. Maximize interactive quality + CgFX + OptiX 2. Identify a ray tracing bottleneck + OptiX 3. Maximize production quality + iray 3. Process the task and merge e.g., ambient occlusion e.g., light maps

What Ray Tracing techniques are possible? Answer: What ever you d like. Unbiased rendering is currently a popular approach in commercial renderers but by no means the only approach For example:

NVIDIA OptiX the world s first interactive ray tracing engine A programmable ray tracing pipeline for accelerating interactive ray tracing applications from complete renderers, to functions, to tasks (collision, acoustics, signal processing, radiation reflectance, etc.) You write the ray tracing techniques OptiX makes them fast 2010

OptiX for faster and easier ray tracing development Faster development Ray calculations are abstracted to single rays State of the art acceleration structures & traversers Programmable shaders, surfaces and cameras Tight coupling with OpenGL & Direct3D GPU issues like load balancing, scheduling, parallelism are all handled. Flexible use Ray payloads can be custom Custom intersection goes well beyond triangles Not tied to a rendering language, shader model or camera model Greatly lowers the barrier to entry For creating high performance ray tracing Developers often saving 50-75% on base effort with much higher performance results 2010

Hybrid Increasing Interactive Realism Combined as a Scene Effect with OGL or D3D + Glossy Reflections + Soft Shadows + Ambient Occlusion, etc NVIDIA s permission required before redistributing 2010

Example: Works Zebra workflow

Example: Works Zebra using the GPU on screen, I can see the difference between real-time and offline, but not between OptiX and offline Manager, Toyota Marketing Japan

Interactive Ray Tracing: Lightworks

Interactive Ray Tracing: Bunkspeed Shot NVIDIA s permission required before redistributing 2010

3ds Max Rendering Revolution Contest

3ds Max Rendering Revolution Contest

3ds Max Rendering Revolution Contest

3ds Max Rendering Revolution Contest

3ds Max Rendering Revolution Contest

* * *including iray NVIDIA s permission required before redistributing 2010

End

iray from mental images bringing photoreal ray tracing to a product near you A physically correct and interactive global illumination renderer. The perfect choice for those relating to the real-world (designers, consumers, ) CUDA-based w/ CPU fallback (massive delta not interactive) Scalable across GPUs & nodes (DICE) Inclusion Options: w/ current mental ray and RealityServer Integrator Edition (for those w/o mental ray) Option for SceniX (later this year) Coming to numerous products in 2010 afternoon morning evening 2010

iray in action NVIDIA s permission required before redistributing 2010

GPU Technology Conference (GTC 2010) September 20-23, 2010 San Jose, CA Now taking Submissions: http://www.nvidia.com/object/call_for_submissions.html

iray and OptiX together addressing the spectrum of rendering needs With iray, you add or replace a renderer. Ideal when you want a ready-to-integrate/use photorealistic solution With OptiX, you accelerate or build a renderer. OptiX is ideal when you want to accelerate hybrid & custom solutions Ongoing Focus: iray quality, complete solution, perf OptiX interaction, flexibility/generality, perf NVIDIA - assisting GPU ray tracing development wherever it s desired 2010