Tracking Graphics State for Network Rendering

Size: px
Start display at page:

Download "Tracking Graphics State for Network Rendering"

Transcription

1 Tracking Graphics State for Network Rendering Ian Buck Greg Humphreys Pat Hanrahan Computer Science Department Stanford University

2 Distributed Graphics How to manage distributed graphics applications, renderers, and displays? Network

3 Virtual Graphics Virtualize the graphics output Serial input to parallel graphics assumes single large resource Virtual

4 Virtual Graphics Virtualize the graphics destination. Driver manages shared resource. assumes owns graphics. Virtual Virtual

5 Virtual Graphics Tiled Rendering Single application rendering to many outputs Parallel Rendering Many applications rendering to a single output Previous Work Window Systems X11 SunRay Visualization Servers GLR GLX

6 Tiled Rendering Network Minimize network traffic Sort first geometry commands Broadcast state commands?

7 Tiled Rendering Network Lazy State Update Issue minimal state commands to sync render

8 Parallel Rendering Hardware context switching too slow.17 ms / switch NVIDIA GeForce 32 streams, 60 fps = 30% Frame Time

9 Parallel Rendering Software context switch Generate state commands for switch Single hardware context

10 Cluster Rendering Network

11 Overview Data structure for generating context comparisons. Tiled Rendering Lazy State Updates Parallel Rendering Soft Context Switching WireGL OpenGL driver for cluster rendering.

12 Context Data Structure Challenge: Generate state commands of context differences. Direct comparison too slow. Acceleration data structure: Track difference information during execution Quick search for comparison Context A Context B

13 Context Data Structure Hierarchical dirty bits Indicate which elements need comparison Texture Lighting Fragment ShadeModel Light0 Position Enable

14 Context Data Structure Hierarchical dirty bits Context A: Context B: glenable(gl_light0) Texture Lighting Fragment ShadeModel Light0 Position Enable

15 Context Diff Context Data Structure Context A Context B Texture Lighting Fragment ShadeModel Light0 gldisable(gl_light0) Position Enable

16 Context Data Structure State command invalidates all other contexts Wide dirty bit vector Lighting Single write invalidates all contexts

17 Tiled Rendering Geometry Bucketing Track object space bounding box Transform object box to screen space Send geometry commands to outputs which overlap screen space extent

18 Tiled Rendering Lazy State Update Defer sending Custom state commands for each render

19 Lazy State Update Virtual Context Matrix: I M 1 Render Contexts Matrix: I M 1 glloadmatrix(m 1 ) Matrix: I Load transform state M 1 Render Geometry

20 Lazy State Update Virtual Context Matrix: M 12 Render Contexts Matrix: M 1 Matrix: I M 2 glloadmatrix(m 2 ) Load transform state M 1 Render Geometry Load transform state M 2 Render Geometry

21 Tiled Rendering Results Marching Cubes.25 Framerate.125 Volume Rendering 1.5 Mtri Surface 1024x768 Outputs 8x4 = 25 Mpixel display 1x1 2x1 2x2 4x2 4x4 8x4 WireGL Broadcast

22 Tiled Rendering Results Quake III 48 Framerate 24 Quake III OpenGL State Intensive Fine Granularity 8x4 dominated by overlap 1x1 2x1 2x2 4x2 4x4 8x4 WireGL Broadcast

23 Parallel Rendering Requires fast context switching between streams

24 Soft Context Switching Generate State Commands Context compare operation to generate state commands Benefits Prevent hardware pipeline flushes Switch time dependent on context differences Matrix: M 1 glloadmatrix(m 2 ) Matrix: M 2

25 Soft Context Switching Results: Varying current color and transformation state. Context switches per second: SGI Infinite Reality SGI Cobalt NVIDIA GeForce WireGL 697 2,101 5, ,699

26 Conclusions State tracking heiarchical dirty bit Allows for fast context comparison operations Enables Virtual Graphics Tiled Rendering Parallel Rendering WireGL

27 Acknowledgements Matthew Eldridge Chris Niederauer Department of Energy contract B504665

28 Tracking Graphics State for Network Rendering Ian Buck Greg Humphreys Pat Hanrahan Computer Science Department Stanford University

Multi-Graphics. Multi-Graphics Project. Scalable Graphics using Commodity Graphics Systems

Multi-Graphics. Multi-Graphics Project. Scalable Graphics using Commodity Graphics Systems Multi-Graphics Scalable Graphics using Commodity Graphics Systems VIEWS PI Meeting May 17, 2000 Pat Hanrahan Stanford University http://www.graphics.stanford.edu/ Multi-Graphics Project Scalable and Distributed

More information

A New Bandwidth Reduction Method for Distributed Rendering Systems

A New Bandwidth Reduction Method for Distributed Rendering Systems A New Bandwidth Reduction Method for Distributed Rendering Systems Won-Jong Lee, Hyung-Rae Kim, Woo-Chan Park, Jung-Woo Kim, Tack-Don Han, and Sung-Bong Yang Media System Laboratory, Department of Computer

More information

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

Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload) Lecture 2: Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload) Visual Computing Systems Analyzing a 3D Graphics Workload Where is most of the work done? Memory Vertex

More information

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

Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload) Lecture 2: Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload) Visual Computing Systems Today Finishing up from last time Brief discussion of graphics workload metrics

More information

A New Bandwidth Reduction Method for Distributed Rendering System

A New Bandwidth Reduction Method for Distributed Rendering System A New Bandwidth Reduction Method for Distributed Rendering System Won-Jong Lee, Hyung-Rae Kim, Woo-Chan Park, Jung-Woo Kim and Tack-Don Han Media System Laboratory, Department of Computer Science, Yonsei

More information

Chromium. Petteri Kontio 51074C

Chromium. Petteri Kontio 51074C HELSINKI UNIVERSITY OF TECHNOLOGY 2.5.2003 Telecommunications Software and Multimedia Laboratory T-111.500 Seminar on Computer Graphics Spring 2003: Real time 3D graphics Chromium Petteri Kontio 51074C

More information

Scheduling the Graphics Pipeline on a GPU

Scheduling the Graphics Pipeline on a GPU Lecture 20: Scheduling the Graphics Pipeline on a GPU Visual Computing Systems Today Real-time 3D graphics workload metrics Scheduling the graphics pipeline on a modern GPU Quick aside: tessellation Triangle

More information

The F-Buffer: A Rasterization-Order FIFO Buffer for Multi-Pass Rendering. Bill Mark and Kekoa Proudfoot. Stanford University

The F-Buffer: A Rasterization-Order FIFO Buffer for Multi-Pass Rendering. Bill Mark and Kekoa Proudfoot. Stanford University The F-Buffer: A Rasterization-Order FIFO Buffer for Multi-Pass Rendering Bill Mark and Kekoa Proudfoot Stanford University http://graphics.stanford.edu/projects/shading/ Motivation for this work Two goals

More information

Visualization and VR for the Grid

Visualization and VR for the Grid Visualization and VR for the Grid Chris Johnson Scientific Computing and Imaging Institute University of Utah Computational Science Pipeline Construct a model of the physical domain (Mesh Generation, CAD)

More information

Appendix B - Unpublished papers

Appendix B - Unpublished papers Chapter 9 9.1 gtiledvnc - a 22 Mega-pixel Display Wall Desktop Using GPUs and VNC This paper is unpublished. 111 Unpublished gtiledvnc - a 22 Mega-pixel Display Wall Desktop Using GPUs and VNC Yong LIU

More information

DESIGNING GRAPHICS ARCHITECTURES AROUND SCALABILITY AND COMMUNICATION

DESIGNING GRAPHICS ARCHITECTURES AROUND SCALABILITY AND COMMUNICATION DESIGNING GRAPHICS ARCHITECTURES AROUND SCALABILITY AND COMMUNICATION A DISSERTATION SUBMITTED TO THE DEPARTMENT OF ELECTRICAL ENGINEERING AND THE COMMITTEE ON GRADUATE STUDIES OF STANFORD UNIVERSITY IN

More information

CS GPU and GPGPU Programming Lecture 7: Shading and Compute APIs 1. Markus Hadwiger, KAUST

CS GPU and GPGPU Programming Lecture 7: Shading and Compute APIs 1. Markus Hadwiger, KAUST CS 380 - GPU and GPGPU Programming Lecture 7: Shading and Compute APIs 1 Markus Hadwiger, KAUST Reading Assignment #4 (until Feb. 23) Read (required): Programming Massively Parallel Processors book, Chapter

More information

Simplifying Applications Use of Wall-Sized Tiled Displays. Espen Skjelnes Johnsen, Otto J. Anshus, John Markus Bjørndalen, Tore Larsen

Simplifying Applications Use of Wall-Sized Tiled Displays. Espen Skjelnes Johnsen, Otto J. Anshus, John Markus Bjørndalen, Tore Larsen Simplifying Applications Use of Wall-Sized Tiled Displays Espen Skjelnes Johnsen, Otto J. Anshus, John Markus Bjørndalen, Tore Larsen Abstract Computer users increasingly work with multiple displays that

More information

A Data-Parallel Genealogy: The GPU Family Tree. John Owens University of California, Davis

A Data-Parallel Genealogy: The GPU Family Tree. John Owens University of California, Davis A Data-Parallel Genealogy: The GPU Family Tree John Owens University of California, Davis Outline Moore s Law brings opportunity Gains in performance and capabilities. What has 20+ years of development

More information

Real-Time Graphics Architecture. Kurt Akeley Pat Hanrahan. Ray Tracing.

Real-Time Graphics Architecture. Kurt Akeley Pat Hanrahan.  Ray Tracing. Real-Time Graphics Architecture Kurt Akeley Pat Hanrahan http://www.graphics.stanford.edu/courses/cs448a-01-fall Ray Tracing with Tim Purcell 1 Topics Why ray tracing? Interactive ray tracing on multicomputers

More information

Real-Time Graphics Architecture

Real-Time Graphics Architecture RealTime Graphics Architecture Kurt Akeley Pat Hanrahan http://www.graphics.stanford.edu/courses/cs448a01fall About Kurt Personal history B.E.E. Univeristy of Delaware, 1980 M.S.E.E. Stanford, 1982 SGI

More information

Real-Time Graphics Architecture

Real-Time Graphics Architecture Real-Time Graphics Architecture Lecture 4: Parallelism and Communication Kurt Akeley Pat Hanrahan http://graphics.stanford.edu/cs448-07-spring/ Topics 1. Frame buffers 2. Types of parallelism 3. Communication

More information

A Data-Parallel Genealogy: The GPU Family Tree

A Data-Parallel Genealogy: The GPU Family Tree A Data-Parallel Genealogy: The GPU Family Tree Department of Electrical and Computer Engineering Institute for Data Analysis and Visualization University of California, Davis Outline Moore s Law brings

More information

Using a Camera to Capture and Correct Spatial Photometric Variation in Multi-Projector Displays

Using a Camera to Capture and Correct Spatial Photometric Variation in Multi-Projector Displays Using a Camera to Capture and Correct Spatial Photometric Variation in Multi-Projector Displays Aditi Majumder Department of Computer Science University of California, Irvine majumder@ics.uci.edu David

More information

Methodology for Lecture. Importance of Lighting. Outline. Shading Models. Brief primer on Color. Foundations of Computer Graphics (Spring 2010)

Methodology for Lecture. Importance of Lighting. Outline. Shading Models. Brief primer on Color. Foundations of Computer Graphics (Spring 2010) Foundations of Computer Graphics (Spring 2010) CS 184, Lecture 11: OpenGL 3 http://inst.eecs.berkeley.edu/~cs184 Methodology for Lecture Lecture deals with lighting (teapot shaded as in HW1) Some Nate

More information

GPU Architecture and Function. Michael Foster and Ian Frasch

GPU Architecture and Function. Michael Foster and Ian Frasch GPU Architecture and Function Michael Foster and Ian Frasch Overview What is a GPU? How is a GPU different from a CPU? The graphics pipeline History of the GPU GPU architecture Optimizations GPU performance

More information

Achieving Real Time Ray Tracing Effects Through GPGPU Acceleration

Achieving Real Time Ray Tracing Effects Through GPGPU Acceleration University of Pennsylvania Senior Project: Achieving Real Time Ray Tracing Effects Through GPGPU Acceleration Matthew J. Vucurevich mjvucure@seas.upenn.edu Advisor: Camillo J. Taylor cjtaylor@central.cis.upenn.edu

More information

GPU Computation Strategies & Tricks. Ian Buck NVIDIA

GPU Computation Strategies & Tricks. Ian Buck NVIDIA GPU Computation Strategies & Tricks Ian Buck NVIDIA Recent Trends 2 Compute is Cheap parallelism to keep 100s of ALUs per chip busy shading is highly parallel millions of fragments per frame 0.5mm 64-bit

More information

A Survey and Performance Analysis of Software Platforms for Interactive Cluster-Based Multi-Screen Rendering

A Survey and Performance Analysis of Software Platforms for Interactive Cluster-Based Multi-Screen Rendering 7. International Immersive Projection Technologies Workshop 9. Eurographics Workshop on Virtual Environments (2003) J. Deisinger, A. Kunz (Editors) A Survey and Performance Analysis of Software Platforms

More information

Graphics and Imaging Architectures

Graphics and Imaging Architectures Graphics and Imaging Architectures Kayvon Fatahalian http://www.cs.cmu.edu/afs/cs/academic/class/15869-f11/www/ About Kayvon New faculty, just arrived from Stanford Dissertation: Evolving real-time graphics

More information

CS427 Multicore Architecture and Parallel Computing

CS427 Multicore Architecture and Parallel Computing CS427 Multicore Architecture and Parallel Computing Lecture 6 GPU Architecture Li Jiang 2014/10/9 1 GPU Scaling A quiet revolution and potential build-up Calculation: 936 GFLOPS vs. 102 GFLOPS Memory Bandwidth:

More information

Mobile HW and Bandwidth

Mobile HW and Bandwidth Your logo on white Mobile HW and Bandwidth Andrew Gruber Qualcomm Technologies, Inc. Agenda and Goals Describe the Power and Bandwidth challenges facing Mobile Graphics Describe some of the Power Saving

More information

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

Graphics Hardware. Graphics Processing Unit (GPU) is a Subsidiary hardware. With massively multi-threaded many-core. Dedicated to 2D and 3D graphics Why GPU? Chapter 1 Graphics Hardware Graphics Processing Unit (GPU) is a Subsidiary hardware With massively multi-threaded many-core Dedicated to 2D and 3D graphics Special purpose low functionality, high

More information

Real-Time Graphics Architecture. Kurt Akeley Pat Hanrahan. Texture

Real-Time Graphics Architecture. Kurt Akeley Pat Hanrahan.  Texture Real-Time Graphics Architecture Kurt Akeley Pat Hanrahan http://www.graphics.stanford.edu/courses/cs448a-01-fall Texture 1 Topics 1. Review of texture mapping 2. RealityEngine and InfiniteReality 3. Texture

More information

Course Recap + 3D Graphics on Mobile GPUs

Course Recap + 3D Graphics on Mobile GPUs Lecture 18: Course Recap + 3D Graphics on Mobile GPUs Interactive Computer Graphics Q. What is a big concern in mobile computing? A. Power Two reasons to save power Run at higher performance for a fixed

More information

Retained Mode Parallel Rendering for Scalable Tiled Displays

Retained Mode Parallel Rendering for Scalable Tiled Displays Retained Mode Parallel Rendering for Scalable Tiled Displays Tom van der Schaaf, Luc Renambot, Desmond Germans, Hans Spoelder, Henri Bal ftom,renambot,balg@cs.vu.nl - fdesmond,hsg@nat.vu.nl Faculty of

More information

GeForce4. John Montrym Henry Moreton

GeForce4. John Montrym Henry Moreton GeForce4 John Montrym Henry Moreton 1 Architectural Drivers Programmability Parallelism Memory bandwidth 2 Recent History: GeForce 1&2 First integrated geometry engine & 4 pixels/clk Fixed-function transform,

More information

3D Computer Games Technology and History. Markus Hadwiger VRVis Research Center

3D Computer Games Technology and History. Markus Hadwiger VRVis Research Center 3D Computer Games Technology and History VRVis Research Center Lecture Outline Overview of the last ten years A look at seminal 3D computer games Most important techniques employed Graphics research and

More information

Programmable GPUS. Last Time? Reading for Today. Homework 4. Planar Shadows Projective Texture Shadows Shadow Maps Shadow Volumes

Programmable GPUS. Last Time? Reading for Today. Homework 4. Planar Shadows Projective Texture Shadows Shadow Maps Shadow Volumes Last Time? Programmable GPUS Planar Shadows Projective Texture Shadows Shadow Maps Shadow Volumes frame buffer depth buffer stencil buffer Stencil Buffer Homework 4 Reading for Create some geometry "Rendering

More information

Mattan Erez. The University of Texas at Austin

Mattan Erez. The University of Texas at Austin EE382V (17325): Principles in Computer Architecture Parallelism and Locality Fall 2007 Lecture 12 GPU Architecture (NVIDIA G80) Mattan Erez The University of Texas at Austin Outline 3D graphics recap and

More information

Optimized Visualization for Tiled Displays

Optimized Visualization for Tiled Displays Optimized Visualization for Tiled Displays Mario Lorenz and Guido Brunnett Computer Graphics and Visualization, Chemnitz University of Technology, Germany { MarioLorenz GuidoBrunnett }@informatiktu-chemnitzde

More information

GPGPU on Mobile Devices

GPGPU on Mobile Devices GPGPU on Mobile Devices Introduction Addressing GPGPU for very mobile devices Tablets Smartphones Introduction Why dedicated GPUs in mobile devices? Gaming Physics simulation for realistic effects 3D-GUI

More information

CSE 167: Introduction to Computer Graphics Lecture #5: Rasterization. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015

CSE 167: Introduction to Computer Graphics Lecture #5: Rasterization. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015 CSE 167: Introduction to Computer Graphics Lecture #5: Rasterization Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015 Announcements Project 2 due tomorrow at 2pm Grading window

More information

Automatic Tuning Matrix Multiplication Performance on Graphics Hardware

Automatic Tuning Matrix Multiplication Performance on Graphics Hardware Automatic Tuning Matrix Multiplication Performance on Graphics Hardware Changhao Jiang (cjiang@cs.uiuc.edu) Marc Snir (snir@cs.uiuc.edu) University of Illinois Urbana Champaign GPU becomes more powerful

More information

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

CSE 591/392: GPU Programming. Introduction. Klaus Mueller. Computer Science Department Stony Brook University CSE 591/392: GPU Programming Introduction Klaus Mueller Computer Science Department Stony Brook University First: A Big Word of Thanks! to the millions of computer game enthusiasts worldwide Who demand

More information

Spring 2009 Prof. Hyesoon Kim

Spring 2009 Prof. Hyesoon Kim Spring 2009 Prof. Hyesoon Kim Application Geometry Rasterizer CPU Each stage cane be also pipelined The slowest of the pipeline stage determines the rendering speed. Frames per second (fps) Executes on

More information

frame buffer depth buffer stencil buffer

frame buffer depth buffer stencil buffer Final Project Proposals Programmable GPUS You should all have received an email with feedback Just about everyone was told: Test cases weren t detailed enough Project was possibly too big Motivation could

More information

Spring 2011 Prof. Hyesoon Kim

Spring 2011 Prof. Hyesoon Kim Spring 2011 Prof. Hyesoon Kim Application Geometry Rasterizer CPU Each stage cane be also pipelined The slowest of the pipeline stage determines the rendering speed. Frames per second (fps) Executes on

More information

Threading Hardware in G80

Threading Hardware in G80 ing Hardware in G80 1 Sources Slides by ECE 498 AL : Programming Massively Parallel Processors : Wen-Mei Hwu John Nickolls, NVIDIA 2 3D 3D API: API: OpenGL OpenGL or or Direct3D Direct3D GPU Command &

More information

Reducing State Changes with a Pipeline Buffer

Reducing State Changes with a Pipeline Buffer Reducing State Changes with a Pipeline Buffer Jens Krokowski Harald Räcke Christian Sohler Matthias Westermann Abstract A limiting factor in the performance of a rendering system is the number of state

More information

Graphics Architectures and OpenCL. Michael Doggett Department of Computer Science Lund university

Graphics Architectures and OpenCL. Michael Doggett Department of Computer Science Lund university Graphics Architectures and OpenCL Michael Doggett Department of Computer Science Lund university Overview Parallelism Radeon 5870 Tiled Graphics Architectures Important when Memory and Bandwidth limited

More information

Windowing System on a 3D Pipeline. February 2005

Windowing System on a 3D Pipeline. February 2005 Windowing System on a 3D Pipeline February 2005 Agenda 1.Overview of the 3D pipeline 2.NVIDIA software overview 3.Strengths and challenges with using the 3D pipeline GeForce 6800 220M Transistors April

More information

Silicon Graphics Prism TM : A Platform for Scalable Graphics

Silicon Graphics Prism TM : A Platform for Scalable Graphics Silicon Graphics, Inc. Silicon Graphics Prism TM : A Platform for Scalable Graphics Presented by: Alpana Kaulgud Engineering Director, Visual Systems Bruno Stefanizzi Applications Engineering Silicon Graphics

More information

Lecture 10: Part 1: Discussion of SIMT Abstraction Part 2: Introduction to Shading

Lecture 10: Part 1: Discussion of SIMT Abstraction Part 2: Introduction to Shading Lecture 10: Part 1: Discussion of SIMT Abstraction Part 2: Introduction to Shading Kayvon Fatahalian CMU 15-869: Graphics and Imaging Architectures (Fall 2011) Today s agenda Response to early course evaluation

More information

Lecture 4: Geometry Processing. Kayvon Fatahalian CMU : Graphics and Imaging Architectures (Fall 2011)

Lecture 4: Geometry Processing. Kayvon Fatahalian CMU : Graphics and Imaging Architectures (Fall 2011) Lecture 4: Processing Kayvon Fatahalian CMU 15-869: Graphics and Imaging Architectures (Fall 2011) Today Key per-primitive operations (clipping, culling) Various slides credit John Owens, Kurt Akeley,

More information

Exposing Application Graphics to a Dynamic Heterogeneous Network

Exposing Application Graphics to a Dynamic Heterogeneous Network Exposing Application Graphics to a Dynamic Heterogeneous Network John Stavrakakis jstavrakakis@vislab.usyd.edu.au Masahiro Takatsuka masa@vislab.usyd.edu.au Zhen-Jock Lau zhenjock@gmail.com ViSLAB, The

More information

A Real-Time Procedural Shading System for Programmable Graphics Hardware

A Real-Time Procedural Shading System for Programmable Graphics Hardware A Real-Time Procedural Shading System for Programmable Graphics Hardware Kekoa Proudfoot William R. Mark Pat Hanrahan Stanford University Svetoslav Tzvetkov NVIDIA Corporation http://graphics.stanford.edu/projects/shading/

More information

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

CS GPU and GPGPU Programming Lecture 8+9: GPU Architecture 7+8. Markus Hadwiger, KAUST CS 380 - GPU and GPGPU Programming Lecture 8+9: GPU Architecture 7+8 Markus Hadwiger, KAUST Reading Assignment #5 (until March 12) Read (required): Programming Massively Parallel Processors book, Chapter

More information

GPU-Based Volume Rendering of. Unstructured Grids. João L. D. Comba. Fábio F. Bernardon UFRGS

GPU-Based Volume Rendering of. Unstructured Grids. João L. D. Comba. Fábio F. Bernardon UFRGS GPU-Based Volume Rendering of João L. D. Comba Cláudio T. Silva Steven P. Callahan Unstructured Grids UFRGS University of Utah University of Utah Fábio F. Bernardon UFRGS Natal - RN - Brazil XVIII Brazilian

More information

Comparing Reyes and OpenGL on a Stream Architecture

Comparing Reyes and OpenGL on a Stream Architecture Comparing Reyes and OpenGL on a Stream Architecture John D. Owens Brucek Khailany Brian Towles William J. Dally Computer Systems Laboratory Stanford University Motivation Frame from Quake III Arena id

More information

Models of the Impact of Overlap in Bucket Rendering

Models of the Impact of Overlap in Bucket Rendering Models of the Impact of Overlap in Bucket Rendering Milton Chen, Gordon Stoll, Homan Igehy, Kekoa Proudfoot and Pat Hanrahan Computer Systems Laboratory Stanford University Abstract Bucket rendering is

More information

CSM Scrolling. An acceleration technique for the rendering of cascaded shadow maps

CSM Scrolling. An acceleration technique for the rendering of cascaded shadow maps CSM Scrolling An acceleration technique for the rendering of cascaded shadow maps CSM Scrolling by: Mike Day CSM Caching by: Al Hastings Who am I? Mike Acton mday@insomniacgames.com afh@insomniacgames.com

More information

Effects needed for Realism. Ray Tracing. Ray Tracing: History. Outline. Foundations of Computer Graphics (Spring 2012)

Effects needed for Realism. Ray Tracing. Ray Tracing: History. Outline. Foundations of Computer Graphics (Spring 2012) Foundations of omputer Graphics (Spring 202) S 84, Lecture 5: Ray Tracing http://inst.eecs.berkeley.edu/~cs84 Effects needed for Realism (Soft) Shadows Reflections (Mirrors and Glossy) Transparency (Water,

More information

The parallelized perspective shear-warp algorithm for volume rendering

The parallelized perspective shear-warp algorithm for volume rendering Parallel Computing 29 (2003) 339 354 www.elsevier.com/locate/parco The parallelized perspective shear-warp algorithm for volume rendering J urgen P. Schulze *, Ulrich Lang High Performance Computing Center

More information

Portland State University ECE 588/688. Graphics Processors

Portland State University ECE 588/688. Graphics Processors Portland State University ECE 588/688 Graphics Processors Copyright by Alaa Alameldeen 2018 Why Graphics Processors? Graphics programs have different characteristics from general purpose programs Highly

More information

A GPU Accelerated Spring Mass System for Surgical Simulation

A GPU Accelerated Spring Mass System for Surgical Simulation A GPU Accelerated Spring Mass System for Surgical Simulation Jesper MOSEGAARD #, Peder HERBORG, and Thomas Sangild SØRENSEN # Department of Computer Science, Centre for Advanced Visualization and Interaction,

More information

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

CSE 591: GPU Programming. Introduction. Entertainment Graphics: Virtual Realism for the Masses. Computer games need to have: Klaus Mueller Entertainment Graphics: Virtual Realism for the Masses CSE 591: GPU Programming Introduction Computer games need to have: realistic appearance of characters and objects believable and creative shading,

More information

Ray Casting on Programmable Graphics Hardware. Martin Kraus PURPL group, Purdue University

Ray Casting on Programmable Graphics Hardware. Martin Kraus PURPL group, Purdue University Ray Casting on Programmable Graphics Hardware Martin Kraus PURPL group, Purdue University Overview Parallel volume rendering with a single GPU Implementing ray casting for a GPU Basics Optimizations Published

More information

Standard Graphics Pipeline

Standard Graphics Pipeline Graphics Architecture Software implementations of rendering are slow. OpenGL on Sparc workstations. Performance can be improved using sophisticated algorithms and faster machines. Real-time large-scale

More information

CSE 167: Introduction to Computer Graphics Lecture #11: Visibility Culling

CSE 167: Introduction to Computer Graphics Lecture #11: Visibility Culling CSE 167: Introduction to Computer Graphics Lecture #11: Visibility Culling Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2017 Announcements Project 3 due Monday Nov 13 th at

More information

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

Today. Rendering algorithms. Rendering algorithms. Images. Images. Rendering Algorithms. Course overview Organization Introduction to ray tracing Today Rendering Algorithms Course overview Organization Introduction to ray tracing Spring 2010 Matthias Zwicker Universität Bern Rendering algorithms Problem statement Given computer representation of

More information

CSE 167: Introduction to Computer Graphics Lecture #18: More Effects. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016

CSE 167: Introduction to Computer Graphics Lecture #18: More Effects. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016 CSE 167: Introduction to Computer Graphics Lecture #18: More Effects Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016 Announcements TA evaluations CAPE Final project blog

More information

Graphics Processing Unit Architecture (GPU Arch)

Graphics Processing Unit Architecture (GPU Arch) Graphics Processing Unit Architecture (GPU Arch) With a focus on NVIDIA GeForce 6800 GPU 1 What is a GPU From Wikipedia : A specialized processor efficient at manipulating and displaying computer graphics

More information

Hardware Shading: State-of-the-Art and Future Challenges

Hardware Shading: State-of-the-Art and Future Challenges Hardware Shading: State-of-the-Art and Future Challenges Hans-Peter Seidel Max-Planck-Institut für Informatik Saarbrücken,, Germany Graphics Hardware Hardware is now fast enough for complex geometry for

More information

Real Time Ray Tracing

Real Time Ray Tracing Real Time Ray Tracing Programação 3D para Simulação de Jogos Vasco Costa Ray tracing? Why? How? P3DSJ Real Time Ray Tracing Vasco Costa 2 Real time ray tracing : example Source: NVIDIA P3DSJ Real Time

More information

CS8803SC Software and Hardware Cooperative Computing GPGPU. Prof. Hyesoon Kim School of Computer Science Georgia Institute of Technology

CS8803SC Software and Hardware Cooperative Computing GPGPU. Prof. Hyesoon Kim School of Computer Science Georgia Institute of Technology CS8803SC Software and Hardware Cooperative Computing GPGPU Prof. Hyesoon Kim School of Computer Science Georgia Institute of Technology Why GPU? A quiet revolution and potential build-up Calculation: 367

More information

Intro to Ray-Tracing & Ray-Surface Acceleration

Intro to Ray-Tracing & Ray-Surface Acceleration Lecture 12 & 13: Intro to Ray-Tracing & Ray-Surface Acceleration Computer Graphics and Imaging UC Berkeley Course Roadmap Rasterization Pipeline Core Concepts Sampling Antialiasing Transforms Geometric

More information

Next-Generation Graphics on Larrabee. Tim Foley Intel Corp

Next-Generation Graphics on Larrabee. Tim Foley Intel Corp Next-Generation Graphics on Larrabee Tim Foley Intel Corp Motivation The killer app for GPGPU is graphics We ve seen Abstract models for parallel programming How those models map efficiently to Larrabee

More information

NVIDIA nforce 790i SLI Chipsets

NVIDIA nforce 790i SLI Chipsets Technical Brief NVIDIA nforce 790i SLI Chipsets Reducing Latencies & Bandwidth Utilization March 2008 TB-03897-001_v01 Introduction The NVIDIA nforce 790i SLI chipset features an improved communication

More information

A Reconfigurable Architecture for Load-Balanced Rendering

A Reconfigurable Architecture for Load-Balanced Rendering A Reconfigurable Architecture for Load-Balanced Rendering Jiawen Chen Michael I. Gordon William Thies Matthias Zwicker Kari Pulli Frédo Durand Graphics Hardware July 31, 2005, Los Angeles, CA The Load

More information

Parallel Volume Rendering Using PC Graphics Hardware

Parallel Volume Rendering Using PC Graphics Hardware Parallel Volume Rendering Using PC Graphics Hardware Marcelo Magallón Matthias Hopf Thomas Ertl Visualization and Interactive Systems Group, IfI, University of Stuttgart Breitwiesenstr. 20-22, D-70656

More information

NVIDIA nfinitefx Engine: Programmable Pixel Shaders

NVIDIA nfinitefx Engine: Programmable Pixel Shaders NVIDIA nfinitefx Engine: Programmable Pixel Shaders The NVIDIA nfinitefx Engine: The NVIDIA nfinitefx TM engine gives developers the ability to program a virtually infinite number of special effects and

More information

The GPGPU Programming Model

The GPGPU Programming Model The Programming Model Institute for Data Analysis and Visualization University of California, Davis Overview Data-parallel programming basics The GPU as a data-parallel computer Hello World Example Programming

More information

Cornell University CS 569: Interactive Computer Graphics. Introduction. Lecture 1. [John C. Stone, UIUC] NASA. University of Calgary

Cornell University CS 569: Interactive Computer Graphics. Introduction. Lecture 1. [John C. Stone, UIUC] NASA. University of Calgary Cornell University CS 569: Interactive Computer Graphics Introduction Lecture 1 [John C. Stone, UIUC] 2008 Steve Marschner 1 2008 Steve Marschner 2 NASA University of Calgary 2008 Steve Marschner 3 2008

More information

Current Trends in Computer Graphics Hardware

Current Trends in Computer Graphics Hardware Current Trends in Computer Graphics Hardware Dirk Reiners University of Louisiana Lafayette, LA Quick Introduction Assistant Professor in Computer Science at University of Louisiana, Lafayette (since 2006)

More information

An Approach on Hardware Design for Computationally Intensive Image Processing Applications based on Light Field Refocusing Algorithm

An Approach on Hardware Design for Computationally Intensive Image Processing Applications based on Light Field Refocusing Algorithm An Approach on Hardware Design for Computationally Intensive Image Processing Applications based on Light Field Refocusing Algorithm Jiayuan Meng, Dee A.B. Weikle, Greg Humphreys, Kevin Skadron Dept. of

More information

FROM VERTICES TO FRAGMENTS. Lecture 5 Comp3080 Computer Graphics HKBU

FROM VERTICES TO FRAGMENTS. Lecture 5 Comp3080 Computer Graphics HKBU FROM VERTICES TO FRAGMENTS Lecture 5 Comp3080 Computer Graphics HKBU OBJECTIVES Introduce basic implementation strategies Clipping Scan conversion OCTOBER 9, 2011 2 OVERVIEW At end of the geometric pipeline,

More information

CMPE 665:Multiple Processor Systems CUDA-AWARE MPI VIGNESH GOVINDARAJULU KOTHANDAPANI RANJITH MURUGESAN

CMPE 665:Multiple Processor Systems CUDA-AWARE MPI VIGNESH GOVINDARAJULU KOTHANDAPANI RANJITH MURUGESAN CMPE 665:Multiple Processor Systems CUDA-AWARE MPI VIGNESH GOVINDARAJULU KOTHANDAPANI RANJITH MURUGESAN Graphics Processing Unit Accelerate the creation of images in a frame buffer intended for the output

More information

Parallel Architecture. Sathish Vadhiyar

Parallel Architecture. Sathish Vadhiyar Parallel Architecture Sathish Vadhiyar Motivations of Parallel Computing Faster execution times From days or months to hours or seconds E.g., climate modelling, bioinformatics Large amount of data dictate

More information

CS 428: Fall Introduction to. OpenGL primer. Andrew Nealen, Rutgers, /13/2010 1

CS 428: Fall Introduction to. OpenGL primer. Andrew Nealen, Rutgers, /13/2010 1 CS 428: Fall 2010 Introduction to Computer Graphics OpenGL primer Andrew Nealen, Rutgers, 2010 9/13/2010 1 Graphics hardware Programmable {vertex, geometry, pixel} shaders Powerful GeForce 285 GTX GeForce480

More information

Hardware-driven visibility culling

Hardware-driven visibility culling Hardware-driven visibility culling I. Introduction 20073114 김정현 The goal of the 3D graphics is to generate a realistic and accurate 3D image. To achieve this, it needs to process not only large amount

More information

The Source for GPU Programming

The Source for GPU Programming The Source for GPU Programming developer.nvidia.com Latest News Developer Events Calendar Technical Documentation Conference Presentations GPU Programming Guide Powerful Tools, SDKs, and more... Join our

More information

Shader Programming 1. Examples. Vertex displacement mapping. Daniel Wesslén 1. Post-processing, animated procedural textures

Shader Programming 1. Examples. Vertex displacement mapping. Daniel Wesslén 1. Post-processing, animated procedural textures Shader Programming 1 Examples Daniel Wesslén, dwn@hig.se Per-pixel lighting Texture convolution filtering Post-processing, animated procedural textures Vertex displacement mapping Daniel Wesslén 1 Fragment

More information

PowerVR Hardware. Architecture Overview for Developers

PowerVR Hardware. Architecture Overview for Developers Public Imagination Technologies PowerVR Hardware Public. This publication contains proprietary information which is subject to change without notice and is supplied 'as is' without warranty of any kind.

More information

GPU Memory Model Overview

GPU Memory Model Overview GPU Memory Model Overview John Owens University of California, Davis Department of Electrical and Computer Engineering Institute for Data Analysis and Visualization SciDAC Institute for Ultrascale Visualization

More information

Abstract. Introduction. Kevin Todisco

Abstract. Introduction. Kevin Todisco - Kevin Todisco Figure 1: A large scale example of the simulation. The leftmost image shows the beginning of the test case, and shows how the fluid refracts the environment around it. The middle image

More information

Network Aware Parallel Rendering with PCs

Network Aware Parallel Rendering with PCs Network Aware Parallel ing with PCs Andre Hinkenjann University of Applied Sciences Bonn-Rhein-Sieg Sankt Augustin, Germany Matthias Bues Fraunhofer IAO Stuttgart, Germany Abstract Interactive rendering

More information

Shading Languages for Graphics Hardware

Shading Languages for Graphics Hardware Shading Languages for Graphics Hardware Bill Mark and Kekoa Proudfoot Stanford University Collaborators: Pat Hanrahan, Svetoslav Tzvetkov, Pradeep Sen, Ren Ng Sponsors: ATI, NVIDIA, SGI, SONY, Sun, 3dfx,

More information

CSE 167: Introduction to Computer Graphics Lecture #10: View Frustum Culling

CSE 167: Introduction to Computer Graphics Lecture #10: View Frustum Culling CSE 167: Introduction to Computer Graphics Lecture #10: View Frustum Culling Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2015 Announcements Project 4 due tomorrow Project

More information

Hardware Accelerated Volume Visualization. Leonid I. Dimitrov & Milos Sramek GMI Austrian Academy of Sciences

Hardware Accelerated Volume Visualization. Leonid I. Dimitrov & Milos Sramek GMI Austrian Academy of Sciences Hardware Accelerated Volume Visualization Leonid I. Dimitrov & Milos Sramek GMI Austrian Academy of Sciences A Real-Time VR System Real-Time: 25-30 frames per second 4D visualization: real time input of

More information

Mali Demos: Behind the Pixels. Stacy Smith

Mali Demos: Behind the Pixels. Stacy Smith Mali Demos: Behind the Pixels Stacy Smith Mali Graphics: Behind the demos Mali Demo Team: Doug Day Stacy Smith (Me) Sylwester Bala Roberto Lopez Mendez PHOTOGRAPH UNAVAILABLE These days I spend more time

More information

SLICING THE WORKLOAD MULTI-GPU OPENGL RENDERING APPROACHES

SLICING THE WORKLOAD MULTI-GPU OPENGL RENDERING APPROACHES SLICING THE WORKLOAD MULTI-GPU OPENGL RENDERING APPROACHES INGO ESSER NVIDIA DEVTECH PROVIZ OVERVIEW Motivation Tools of the trade Multi-GPU driver functions Multi-GPU programming functions Multi threaded

More information

Accelerating Molecular Modeling Applications with Graphics Processors

Accelerating Molecular Modeling Applications with Graphics Processors Accelerating Molecular Modeling Applications with Graphics Processors John Stone Theoretical and Computational Biophysics Group University of Illinois at Urbana-Champaign Research/gpu/ SIAM Conference

More information

CS450/550. Pipeline Architecture. Adapted From: Angel and Shreiner: Interactive Computer Graphics6E Addison-Wesley 2012

CS450/550. Pipeline Architecture. Adapted From: Angel and Shreiner: Interactive Computer Graphics6E Addison-Wesley 2012 CS450/550 Pipeline Architecture Adapted From: Angel and Shreiner: Interactive Computer Graphics6E Addison-Wesley 2012 0 Objectives Learn the basic components of a graphics system Introduce the OpenGL pipeline

More information

Managing Deformable Objects in Cluster Rendering

Managing Deformable Objects in Cluster Rendering Managing Deformable Objects in Cluster Rendering Thomas Convard, Patrick Bourdot, and Jean-Marc Vézien LIMSI-CNRS, Université ParisXI {convard, bourdot, vezien}@limsi.fr Abstract. This paper presents DRS

More information