INTRODUCTION to OPTIX Martin Stich, Engineering Manager Optix Basics Advanced Topics AGENDA Case Studies Feature Outlook

Total Page:16

File Type:pdf, Size:1020Kb

INTRODUCTION to OPTIX Martin Stich, Engineering Manager Optix Basics Advanced Topics AGENDA Case Studies Feature Outlook INTRODUCTION TO OPTIX Martin Stich, Engineering Manager OptiX Basics Advanced Topics AGENDA Case Studies Feature Outlook 2 OPTIX BASICS 3 IN A NUTSHELL The OptiX Ray Tracing SDK State-of-the-art performance: 500M+ rays/sec Algorithm and hardware agnostic Shaders with single-ray programming model, recursion Available free for private and commercial use 4 RELEASE TIMELINE OptiX 1.0 OptiX 3.9 OptiX 4.0 OptiX 4.1 Pascal Support LLVM Pipeline Performance Hello World! ... NVLINK Scaling CUDA 8, VS2015 2009 Jan 2016 Summer 2016 TODAY! 5 MODERN RAY TRACING Rasterization: 6 MODERN RAY TRACING Rasterization: Ray Tracing: 7 THE RAY TRACING PIPELINE INTERSECTION ANY-HIT Programmable: INTERSECTION ANY-HIT Ray Generation ← Launch entry CLOSEST-HIT Closest Hit, Any Hit, Miss ← Shading Intersection ← Geometry RAY GENERATION 8 MAIN OPERATIONS RAY GEN INTERSECT ANY HIT CLOSEST HIT MISS rtTrace ✔ ✔ ✔ rtPotentialIntersection ✔ rtReportIntersection ✔ rtIgnoreIntersection ✔ rtTerminateRay ✔ 9 SHADER COMMUNICATION Variables Example: similar to uniforms in other systems Textures constants, system values, buffers, textures, … Current ray 10 SHADER COMMUNICATION Variables Example: similar to uniforms in other systems Textures constants, system values, buffers, textures, … Current ray Ray Payload arbitrary data associated with ray Example: in/out from rtTrace to Any-hit, Closest-hit, Miss Color data 11 SHADER COMMUNICATION Variables Example: similar to uniforms in other systems Textures constants, system values, buffers, textures, … Current ray Ray Payload arbitrary data associated with ray Example: in/out from rtTrace to Any-hit, Closest-hit, Miss Color data Attributes arbitrary data associated with hit Example: generated in Intersection program Barycentrics consumed by Any-hit, Closest-hit 12 EXAMPLE Miniature Path Tracer See optixPathTracer SDK sample for a slightly less minimalistic version 13 GLOBAL ILLUMINATION 14 GLOBAL ILLUMINATION 15 GLOBAL ILLUMINATION 16 GLOBAL ILLUMINATION 17 HOWEVER… 18 RAY PAYLOAD Path State Definition struct RayPayload { float3 radiance; // stores contribution after we hit the light source float3 attenuation; // accumulated attenuation of radiance due to materials float3 next_origin; // reflection ray to be traced for the next float3 next_direction; // ..segment of the path unsigned seed; // random number generator state bool done; // whether we’re done tracing this path }; 19 INTEGRATION RT_PROGRAM void ray_generation() { unsigned int seed = tea<16>( launch_index.x + launch_index.y*output_buffer.size().x, frame_number ); float3 ray_origin = eye; 1 float3 ray_direction = compute_jittered_ray_dir( seed ); RayPayload payload; payload.radiance = make_float3(0,0,0); payload.attenuation = make_float3(1,1,1); payload.seed = seed; 2 payload.done = false; int depth = 0; while( !payload.done && depth++ < 10 ) { Ray ray = make_Ray( ray_origin, ray_direction, 0, 0.001f, RT_DEFAULT_MAX ); rtTrace( scene, ray, payload ); 3 ray_origin = payload.next_origin; ray_direction = payload.next_direction; } const float3 result = payload.radiance * payload.attenuation; const float lerp_t = frame_number > 1 ? 1.0f / frame_number : 1.0f; const float3 prev_col = make_float3( output_buffer[launch_index] ); 4 output_buffer[launch_index] = make_float4( lerp( prev_col, result, lerp_t ), 1.0f ); } 20 DIFFUSE MATERIAL rtDeclareVariable( float3, diffuse_color, , ); rtDeclareVariable( float3, normal, attribute normal, ); rtDeclareVariable( optix::Ray, ray, rtCurrentRay, ); rtDeclareVariable( float, t_hit, rtIntersectionDistance, ); rtDeclareVariable( RayPayload, current_payload, rtPayload, ); RT_PROGRAM void closest_hit_diffuse() { const float3 hitpoint = ray.origin + t_hit * ray.direction; const float z1 = rnd( current_payload.seed ); const float z2 = rnd( current_payload.seed ); float3 dir; cosine_sample_hemisphere( z1, z2, dir ); optix::Onb onb( normal ); onb.inverse_transform( dir ); current_payload.next_origin = hitpoint; current_payload.next_direction = dir; current_payload.attenuation *= diffuse_color; } 21 LIGHT MATERIAL AND MISS rtDeclareVariable( RayPayload, current_payload, rtPayload, ); rtDeclareVariable( float3, emission_color, , ); RT_PROGRAM void closest_hit_light() { current_payload.radiance = emission_color; current_payload.done = true; } RT_PROGRAM void miss() { current_payload.radiance = make_float3(0,0,0); current_payload.done = true; } 22 SCENE GEOMETRY rtDeclareVariable( float3, anchor, , ); rtDeclareVariable( float3, v1, , ); rtDeclareVariable( float3, v2, , ); rtDeclareVariable( float4, plane, , ); rtDeclareVariable( float3, normal, attribute normal, ); rtDeclareVariable( optix::Ray, ray, rtCurrentRay, ); RT_PROGRAM void intersect( int primIdx ) { const float3 n = make_float3( plane ); const float dt = dot( ray.direction, n ); const float t = (plane.w - dot(n, ray.origin)) / dt; const float3 p = ray.origin + ray.direction * t; const float3 vi = p - anchor; const float a1 = dot( v1, vi ); const float a2 = dot( v2, vi ); if( a1 >= 0 && a1 <= 1 && a2 >= 0 && a2 <= 1 ) { if( rtPotentialIntersection( t ) ) { normal = n; rtReportIntersection( 0 ); } } } 23 RESULT Accumulation Over Time 24 NEXT STEP IDEAS Mini Path Tracer Reader Exercises Next event estimation Russian roulette Sphere primitives Mirror material Glass material Triangle meshes Environment maps ... 25 NODE GRAPH Context Group Geometry Group Geometry Variables Instance Intersection Geometry Program Any Hit + Material Closest Hit 26 ADVANCED TOPICS 27 INTEROP Share CUDA and OpenGL Resources OpenGL Share textures and vertex buffers rtBufferCreateFromGLBO rtTextureSamplerCreateFromGLImage CUDA Share CUDA allocations rtBufferSetDevicePointer rtBufferGetDevicePointer 28 BINDLESS OBJECTS “Bindless”: powerful concept to dynamically select textures, buffers, and programs at runtime Allows efficient implementation of large shading networks Reduces code size, compile times, and number of compiles Pixar Animation Studio’s “Flow” material editing tool. Visit the NVIDIA website to watch a SIGGRAPH 2015 talk describing the system in detail. 29 PTX GENERATION Options Offline CUDA-C++ nvcc.exe CUDA-C++ nvrtc.dll PTX OptiX JIT NVVM/ LLVM-IR NVPTX 30 MULTI-GPU AND NVLINK Automatic Scaling 110M Triangles 23M Grass Blades 15GB Textures 2 x GP100 31 Monsters University data set courtesy of Pixar Studios REMOTE RENDERING On Quadro VCA or DGX-1 Incremental updates Progressive OptiX App video stream ETHERNET INTERNET OptiX Server(s) 32 OPTIX PRIME Simple intersection-only API Rays OptiX Prime Intersections (primIdx, t, u, v) GPU or CPU Triangles Supports instancing, async operations, ray masks Performance similar to OptiX Same semantics via OptiX: See optixRaycasting sample 33 CASE STUDIES 34 PERFORMANCE Raw Traversal on Titan X Pascal +3% in OptiX 4.1 +16% in OptiX 4.1 35 NVIDIA: IRAY & MENTAL RAY 36 NVIDIA: GVDB Sparse Volume Rendering OpenVDB format support Image Property of DreamWorks Animation Live interaction with multiple- bounce GI scattering, 10x-30x faster than CPU Introduction and Techniques with NVIDIA GVDB Voxels Monday, 9:00 AM – Room 231 37 AAA-STUDIO: FURRYBALL PRODUCTION RENDERING 38 VISUAL MOLECULAR DYNAMICS (VMD) Molecular Visualization package with hundreds of thousands of users Developed by John Stone of U Illinois Cutting Edge OptiX Ray Tracing Techniques for Visualization of Biomolecular and Cellular Simulations in VMD Tuesday, 3:30 PM – Room 230C 39 OLCF: SCIENTIFIC VISUALIZATION Visualizing laser interaction with metals, hundreds of millions of primitives on DGX-1 Developed by Benjamin Hernandez, OLCF-ORNL Exploratory Visualization of Petascale Particle Data in NVIDIA DGX-1 Tuesday, 3:30 PM – Room 212B Simulation: OLCF INCITE 2017 "Petascale Simulations of Short Pulse Laser Interaction with Metals" PI Leonid Zhigilei, University of Virginia 40 NVIDIA: VRWORKS AUDIO Sound waves reflect Path traced audio off of the environment NVIDIA VRWORKS AUDIO - Improving VR Immersion with acoustic fidelity Thursday, 11:00 AM – Room 230B 41 BUNGIE: LIGHT BAKING FOR GAMES Light and occlusion baking is a major bottleneck in game design Workflow-changing speedups by switching from CPU render farms to OptiX 42 LIGHTMASS Light baking in Unreal Engine 4 Total Time on Titan X CPU 1638s GPU 1X 426s GPU 2X 298s 43 ADVANCED SAMPLES Maintained on Github A collection of larger, more sophisticated sample applications than the ones that come with the SDK Available at: https://github.com/ nvpro-samples/optix_advanced_samples 44 FEATURE OUTLOOK 45 UNDER DEVELOPMENT SEPARATE MOTION BLUR PERFORMANCE COMPILATION Shorter per-shader Transform and Performance is always a compile times deformation blur focus Fast incremental addition Tackling some big ticket and removal of programs ideas over the next ~year Overall speedup through parallel compilation 46 THANK YOU! Related Talks: S7185 - LEVERAGING NVRTC RUNTIME COMPILATION FOR DYNAMICALLY BUILDING OPTIX SHADERS FROM MDL MATERIALS S7454 - NVIDIA ADVANCED RENDERING S7452 - CUTTING EDGE OPTIX RAY TRACING TECHNIQUES FOR VISUALIZATION OF BIOMOLECULAR AND CELLULAR SIMULATIONS IN VMD S7175 - EXPLORATORY VISUALIZATION OF PETASCALE PARTICLE DATA IN NVIDIA DGX-1 S7400 - GPU-CLOUD PHOTOREALISTIC RENDERING FOR THE NEXT GENERATION OF CLOUD CAD TOOLS H7106 - PHYSICALLY BASED RAY TRACING WITH OPTIX S7391 - TURBOCHARGING VMD MOLECULAR VISUALIZATIONS WITH STATE-OF-THE-ART RENDERING AND VR TECHNOLOGIES S7424 - INTRODUCTION AND TECHNIQUES WITH NVIDIA GVDB VOXELS S7135 - NVIDIA VRWORKS AUDIO - IMPROVING VR IMMERSION WITH ACOUSTIC FIDELITY 47 .
Recommended publications
  • GPU Developments 2018
    GPU Developments 2018 2018 GPU Developments 2018 © Copyright Jon Peddie Research 2019. All rights reserved. Reproduction in whole or in part is prohibited without written permission from Jon Peddie Research. This report is the property of Jon Peddie Research (JPR) and made available to a restricted number of clients only upon these terms and conditions. Agreement not to copy or disclose. This report and all future reports or other materials provided by JPR pursuant to this subscription (collectively, “Reports”) are protected by: (i) federal copyright, pursuant to the Copyright Act of 1976; and (ii) the nondisclosure provisions set forth immediately following. License, exclusive use, and agreement not to disclose. Reports are the trade secret property exclusively of JPR and are made available to a restricted number of clients, for their exclusive use and only upon the following terms and conditions. JPR grants site-wide license to read and utilize the information in the Reports, exclusively to the initial subscriber to the Reports, its subsidiaries, divisions, and employees (collectively, “Subscriber”). The Reports shall, at all times, be treated by Subscriber as proprietary and confidential documents, for internal use only. Subscriber agrees that it will not reproduce for or share any of the material in the Reports (“Material”) with any entity or individual other than Subscriber (“Shared Third Party”) (collectively, “Share” or “Sharing”), without the advance written permission of JPR. Subscriber shall be liable for any breach of this agreement and shall be subject to cancellation of its subscription to Reports. Without limiting this liability, Subscriber shall be liable for any damages suffered by JPR as a result of any Sharing of any Material, without advance written permission of JPR.
    [Show full text]
  • Adding RTX Acceleration to Iray with Optix 7
    Adding RTX acceleration to Iray with OptiX 7 Lutz Kettner Director Advanced Rendering and Materials July 30th, SIGGRAPH 2019 What is Iray? Production Rendering on CUDA In Production since > 10 Years Bring ray tracing based production / simulation quality rendering to GPUs New paradigm: Push Button rendering (open up new markets) Plugins for 3ds Max Maya Rhino SketchUp … 2 SIMULATION QUALITY 3 iray legacy ARTISTIC FREEDOM 4 How Does it Work? 99% physically based Path Tracing To guarantee simulation quality and Push Button • Limit shortcuts and good enough hacks to minimum • Brute force (spectral) simulation no intermediate filtering scale over multiple GPUs and hosts even in interactive use GTC 2014 19 VCA * 8 Q6000 GPUs 5 How Does it Work? 99% physically based Path Tracing To guarantee simulation quality and Push Button • Limit shortcuts and good enough hacks to minimum • Brute force (spectral) simulation no intermediate filtering scale over multiple GPUs and hosts even in interactive use • Two-way path tracing from camera and (opt.) lights 6 How Does it Work? 99% physically based Path Tracing To guarantee simulation quality and Push Button • Limit shortcuts and good enough hacks to minimum • Brute force (spectral) simulation no intermediate filtering scale over multiple GPUs and hosts even in interactive use • Two-way path tracing from camera and (opt.) lights • Use NVIDIA Material Definition Language (MDL) 7 How Does it Work? 99% physically based Path Tracing To guarantee simulation quality and Push Button • Limit shortcuts and good
    [Show full text]
  • The Growing Importance of Ray Tracing Due to Gpus
    NVIDIA Application Acceleration Engines advancing interactive realism & development speed July 2010 NVIDIA Application Acceleration Engines A family of highly optimized software modules, enabling software developers to supercharge applications with high performance capabilities that exploit NVIDIA GPUs. Easy to acquire, license and deploy (most being free) Valuable features and superior performance can be quickly added App’s stay pace with GPU advancements (via API abstraction) NVIDIA Application Acceleration Engines PhysX physics & dynamics engine breathing life into real-time 3D; Apex enabling 3D animators CgFX programmable shading engine enhancing realism across platforms and hardware SceniX scene management engine the basis of a real-time 3D system CompleX scene scaling engine giving a broader/faster view on massive data OptiX ray tracing engine making ray tracing ultra fast to execute and develop iray physically correct, photorealistic renderer, from mental images making photorealism easy to add and produce © 2010 Application Acceleration Engines PhysX • Streamlines the adoption of latest GPU capabilities, physics & dynamics getting cutting-edge features into applications ASAP, CgFX exploiting the full power of larger and multiple GPUs programmable shading • Gaining adoption by key ISVs in major markets: SceniX scene • Oil & Gas Statoil, Open Inventor management • Design Autodesk, Dassault Systems CompleX • Styling Autodesk, Bunkspeed, RTT, ICIDO scene scaling • Digital Content Creation Autodesk OptiX ray tracing • Medical Imaging N.I.H iray photoreal rendering © 2010 Accelerating Application Development App Example: Auto Styling App Example: Seismic Interpretation 1. Establish the Scene 1. Establish the Scene = SceniX = SceniX 2. Maximize interactive 2. Maximize data visualization quality + quad buffered stereo + CgFX + OptiX + volume rendering + ambient occlusion 3.
    [Show full text]
  • RTX Beyond Ray Tracing
    RTX Beyond Ray Tracing Exploring the Use of Hardware Ray Tracing Cores for Tet-Mesh Point Location -Now, let’s run a lot of experiments … I Wald (NVIDIA), W Usher, N Morrical, L Lediaev, V Pascucci (University of Utah) Motivation – What this is about - In this paper: We accelerate Unstructured-Data (Tet Mesh) Volume Ray Casting… NVIDIA Confidential Motivation – What this is about - In this paper: We accelerate Unstructured-Data (Tet Mesh) Volume Ray Casting… - But: This is not what this is (primarily) about - Volume rendering is just a “proof of concept”. - Original question: “What else” can you do with RTX? - Remember the early 2000’s (e.g., “register combiners”): Lots of innovation around “using graphics hardware for non- graphics problems”. - Since CUDA: Much of that has been subsumed through CUDA - Today: Now that we have new hardware units (RTX, Tensor Cores), what else could we (ab-)use those for? (“(ab-)use” as in “use for something that it wasn’t intended for”) NVIDIA Confidential Motivation – What this is about - In this paper: We accelerate Unstructured-Data (Tet Mesh) Volume Ray Casting… - But: This is not what this is (primarily) about - Volume rendering is just a “proof of concept”. - Original question: “What else” can you do with RTX? - Remember the early 2000’s (e.g., “register combiners”): Lots of innovation around “using graphics hardware for non- graphics →problems”.Two main goal(s) of this paper: -a)SinceGet CUDA: readers Much ofto that think has beenabout subsumed the “what through else”s CUDA… - Today: Nowb) Showthat
    [Show full text]
  • RTX-Accelerated Hair Brought to Life with NVIDIA Iray (GTC 2020 S22494)
    RTX-accelerated Hair brought to Life with NVIDIA Iray (GTC 2020 S22494) Carsten Waechter, March 2020 What is Iray? Production Rendering on CUDA In Production since > 10 Years Bring ray tracing based production / simulation quality rendering to GPUs New paradigm: Push Button rendering (open up new markets) Plugins for 3ds Max Maya Rhino SketchUp … … … 2 What is Iray? NVIDIA testbed and inspiration for new tech NVIDIA Material Definition Language (MDL) evolved from internal material representation into public SDK NVIDIA OptiX 7 co-development, verification and guinea pig NVIDIA RTX / RT Cores scene- and ray-dumps to drive hardware requirements NVIDIA Maxwell…NVIDIA Turing (& future) enhancements profiling/experiments resulting in new features/improvements Design and test/verify NVIDIA’s new Headquarter (in VR) close cooperation with Gensler 3 Simulation Quality 4 iray legacy Artistic Freedom 5 How Does it Work? 99% physically based Path Tracing To guarantee simulation quality and Push Button • Limit shortcuts and good enough hacks to minimum • Brute force (spectral) simulation no intermediate filtering scale over multiple GPUs and hosts even in interactive use • Two-way path tracing from camera and (opt.) lights • Use NVIDIA Material Definition Language (MDL) • NVIDIA AI Denoiser to clean up remaining noise 6 How Does it Work? 99% physically based Path Tracing To guarantee simulation quality and Push Button • Limit shortcuts and good enough hacks to minimum • Brute force (spectral) simulation no intermediate filtering scale over multiple
    [Show full text]
  • NVIDIA Ampere GA102 GPU Architecture Whitepaper
    NVIDIA AMPERE GA102 GPU ARCHITECTURE Second-Generation RTX Updated with NVIDIA RTX A6000 and NVIDIA A40 Information V2.0 Table of Contents Introduction 5 GA102 Key Features 7 2x FP32 Processing 7 Second-Generation RT Core 7 Third-Generation Tensor Cores 8 GDDR6X and GDDR6 Memory 8 Third-Generation NVLink® 8 PCIe Gen 4 9 Ampere GPU Architecture In-Depth 10 GPC, TPC, and SM High-Level Architecture 10 ROP Optimizations 11 GA10x SM Architecture 11 2x FP32 Throughput 12 Larger and Faster Unified Shared Memory and L1 Data Cache 13 Performance Per Watt 16 Second-Generation Ray Tracing Engine in GA10x GPUs 17 Ampere Architecture RTX Processors in Action 19 GA10x GPU Hardware Acceleration for Ray-Traced Motion Blur 20 Third-Generation Tensor Cores in GA10x GPUs 24 Comparison of Turing vs GA10x GPU Tensor Cores 24 NVIDIA Ampere Architecture Tensor Cores Support New DL Data Types 26 Fine-Grained Structured Sparsity 26 NVIDIA DLSS 8K 28 GDDR6X Memory 30 RTX IO 32 Introducing NVIDIA RTX IO 33 How NVIDIA RTX IO Works 34 Display and Video Engine 38 DisplayPort 1.4a with DSC 1.2a 38 HDMI 2.1 with DSC 1.2a 38 Fifth Generation NVDEC - Hardware-Accelerated Video Decoding 39 AV1 Hardware Decode 40 Seventh Generation NVENC - Hardware-Accelerated Video Encoding 40 NVIDIA Ampere GA102 GPU Architecture ii Conclusion 42 Appendix A - Additional GeForce GA10x GPU Specifications 44 GeForce RTX 3090 44 GeForce RTX 3070 46 Appendix B - New Memory Error Detection and Replay (EDR) Technology 49 Appendix C - RTX A6000 GPU Perf ormance 50 List of Figures Figure 1.
    [Show full text]
  • Nx Witness User Manual Contents
    User Manual Still need help? Visit us at http://support.networkoptix.com Nx Witness User Manual Contents Table of Contents Working with Nx Witness 1 Opening................................................................................................................................... and Closing Nx Witness Client 1 Connecting................................................................................................................................... to Nx Witness via Web-Client 3 Connecting................................................................................................................................... to Enterprise Controller and Working Offline 4 Launching................................................................................................................................... Nx Witness in Compatibility Mode 7 Introducing................................................................................................................................... User Roles 8 Nx Witness................................................................................................................................... User Interface Overview 9 Main Menu .......................................................................................................................................................... 10 Show ing and ..........................................................................................................................................................Hiding Side Panels 11 Tabs and Layouts.........................................................................................................................................................
    [Show full text]
  • Exploiting Hardware-Accelerated Ray Tracing for Monte Carlo Particle Transport with Openmc
    Exploiting Hardware-Accelerated Ray Tracing for Monte Carlo Particle Transport with OpenMC Justin Lewis Salmon, Simon McIntosh Smith Department of Computer Science University of Bristol Bristol, U.K. fjustin.salmon.2018, [email protected] Abstract—OpenMC is a CPU-based Monte Carlo particle HPC due to their proliferation in modern supercomputer transport simulation code recently developed in the Computa- designs such as Summit [6]. tional Reactor Physics Group at MIT, and which is currently being evaluated by the UK Atomic Energy Authority for use on A. OpenMC the ITER fusion reactor project. In this paper we present a novel port of OpenMC to run on the new ray tracing (RT) cores in OpenMC is a Monte Carlo particle transport code focussed NVIDIA’s latest Turing GPUs. We show here that the OpenMC on neutron criticality simulations, recently developed in the GPU port yields up to 9.8x speedup on a single node over a Computational Reactor Physics Group at MIT [7]. OpenMC 16-core CPU using the native constructive solid geometry, and is written in modern C++, and has been developed using up to 13x speedup using approximate triangle mesh geometry. Furthermore, since the expensive 3D geometric operations re- high code quality standards to ensure maintainability and quired during particle transport simulation can be formulated consistency. This is in contrast to many older codes, which as a ray tracing problem, there is an opportunity to gain even are often written in obsolete versions of Fortran, and have higher performance on triangle meshes by exploiting the RT grown to become highly complex and difficult to maintain.
    [Show full text]
  • NVIDIA's Opengl Functionality
    NVIDIANVIDIA ’’ss OpenGLOpenGL FunctionalityFunctionality Session 2127 | Room A5 | Monday, September, 20th, 16:00 - 17:20 San Jose Convention Center, San Jose, California Mark J. Kilgard • Principal System Software Engineer – OpenGL driver – Cg (“C for graphics”) shading language • OpenGL Utility Toolkit (GLUT) implementer • Author of OpenGL for the X Window System • Co-author of Cg Tutorial Outline • OpenGL’s importance to NVIDIA • OpenGL 3.3 and 4.0 • OpenGL 4.1 • Loose ends: deprecation, Cg, further extensions OpenGL Leverage Cg Parallel Nsight SceniX CompleX OptiX Example of Hybrid Rendering with OptiX OpenGL (Rasterization) OptiX (Ray tracing) Parallel Nsight Provides OpenGL Profiling Configure Application Trace Settings Parallel Nsight Provides OpenGL Profiling Magnified trace options shows specific OpenGL (and Cg) tracing options Parallel Nsight Provides OpenGL Profiling Parallel Nsight Provides OpenGL Profiling Trace of mix of OpenGL and CUDA shows glFinish & OpenGL draw calls OpenGL In Every NVIDIA Business OpenGL on Quadro – World class OpenGL 4 drivers – 18 years of uninterrupted API compatibility – Workstation application certifications – Workstation application profiles – Display list optimizations – Fast antialiased lines – Largest memory configurations: 6 gigabytes – GPU affinity – Enhanced interop with CUDA and multi-GPU OpenGL – Advanced multi-GPU rendering – Overlays – Genlock – Unified Back Buffer for less framebuffer memory usage – Cross-platform • Windows XP, Vista, Win7, Linux, Mac, FreeBSD, Solaris – SLI Mosaic –
    [Show full text]
  • Release Notes for the NVIDIA® Optix™ Ray Tracing Engine
    Release Notes for the NVIDIA® OptiX™ ray tracing engine Version 3.0.0 November 2012 Welcome to the latest release of the NVIDIA OptiX ray tracing engine and SDK, with support for all CUDA-capable GPUs. This package contains the libraries required to experience the latest technology for programmable GPU ray tracing, plus pre-compiled samples (with source code) demonstrating a broad range of ray tracing techniques and highlighting basic functionality. Support: The normal path for OptiX support is on NVIDIA's Developer Zone at: https://devtalk.nvidia.com/default/board/90/ If you have any confidential concerns please send your issues directly to [email protected] and they will be addressed by the development team. You can continue to download OptiX from http://developer.nvidia.com/optix-download/ System Requirements (for running binaries referencing OptiX) Graphics Hardware: CUDA capable devices (G80 or later) are supported on GeForce, Quadro, or Tesla class products. Kepler GK104, GK107 and GK110 GPUs are now supported. Multiple devices/GPUs are only supported on “GT200”, “Fermi” and “Kepler” generation GPUs. Out-of-core ray tracing of large datasets is only supported on Quadro and Tesla GPUs. Graphics Driver: The CUDA R300 or later driver is required. The latest drivers available are highly recommended (307.4 or later for Windows, 310.19 for Linux and the CUDA 5.0 driver extension for Mac). For the Mac, the driver extension module supplied with CUDA 5.0 or later will need to be installed. Note that the Linux and Mac drivers can only be obtained from the CUDA 5.0 download page at the moment.
    [Show full text]
  • GPU-Accelerated Optix Ray Tracing for Scientific Visualization
    GPU-Accelerated OptiX Ray Tracing for Scientific Visualization John E. Stone Theoretical and Computational Biophysics Group Beckman Institute for Advanced Science and Technology University of Illinois at Urbana-Champaign http://www.ks.uiuc.edu/Research/gpu/ 10:00-10:25, NVIDIA Theater, Siggraph 2018 Vancouver BC, Canada, Thursday August 16th, 2018 Biomedical Technology Research Center for Macromolecular Modeling and Bioinformatics Beckman Institute, University of Illinois at Urbana-Champaign - www.ks.uiuc.edu VMD – “Visual Molecular Dynamics” • Visualization and analysis of: – Molecular dynamics simulations – Lattice cell simulations – Quantum chemistry calculations – Cryo-EM densities, volumetric data – Sequence information • User extensible scripting and plugins • http://www.ks.uiuc.edu/Research/vmd/ Cell-Scale Modeling MD Simulation Biomedical Technology Research Center for Macromolecular Modeling and Bioinformatics Beckman Institute, University of Illinois at Urbana-Champaign - www.ks.uiuc.edu Goal: A Computational Microscope Study the molecular machines in living cells Ribosome: target for antibiotics Poliovirus Biomedical Technology Research Center for Macromolecular Modeling and Bioinformatics Beckman Institute, University of Illinois at Urbana-Champaign - www.ks.uiuc.edu Goal: Intuitive interactive viz. in crowded molecular complexes Results from 64M atom, 1 μs sim! Biomedical Technology Research CenterClose- for Macromolecularup view Modeling of chloride and Bioinformatics ions permeating through Beckman Institute, University
    [Show full text]
  • VMD User's Guide
    VMD User’s Guide Version 1.9.4a48 October 13, 2020 NIH Biomedical Research Center for Macromolecular Modeling and Bioinformatics Theoretical and Computational Biophysics Group1 Beckman Institute for Advanced Science and Technology University of Illinois at Urbana-Champaign 405 N. Mathews Urbana, IL 61801 http://www.ks.uiuc.edu/Research/vmd/ Description The VMD User’s Guide describes how to run and use the molecular visualization and analysis program VMD. This guide documents the user interfaces displaying and grapically manipulating molecules, and describes how to use the scripting interfaces for analysis and to customize the behavior of VMD. VMD development is supported by the National Institutes of Health grant numbers NIH P41- GM104601. 1http://www.ks.uiuc.edu/ Contents 1 Introduction 11 1.1 Contactingtheauthors. ....... 12 1.2 RegisteringVMD.................................. 12 1.3 CitationReference ............................... ...... 12 1.4 Acknowledgments................................. ..... 13 1.5 Copyright and Disclaimer Notices . .......... 13 1.6 For information on our other software . .......... 15 2 Hardware and Software Requirements 17 2.1 Basic Hardware and Software Requirements . ........... 17 2.2 Multi-core CPUs and GPU Acceleration . ......... 17 2.3 Parallel Computing on Clusters and Supercomputers . .............. 18 3 Tutorials 19 3.1 RapidIntroductiontoVMD. ...... 19 3.2 Viewing a molecule: Myoglobin . ........ 19 3.3 RenderinganImage ................................ 21 3.4 AQuickAnimation................................. 21 3.5 An Introduction to Atom Selection . ......... 22 3.6 ComparingTwoStructures . ...... 22 3.7 SomeNiceRepresenations . ....... 23 3.8 Savingyourwork.................................. 24 3.9 Tracking Script Command Versions of the GUI Actions . ............ 24 4 Loading A Molecule 26 4.1 Notes on common molecular file formats . ......... 26 4.2 Whathappenswhenafileisloaded? . ....... 27 4.3 Babelinterface .................................
    [Show full text]