Parallel Rendering 1. 2 Introduction In many situations, standard rendering pipeline not sufficient ­Need higher resolution display ­More primitives than.

Slides:



Advertisements
Similar presentations
COMPUTER GRAPHICS CS 482 – FALL 2014 NOVEMBER 10, 2014 GRAPHICS HARDWARE GRAPHICS PROCESSING UNITS PARALLELISM.
Advertisements

CS 352: Computer Graphics Chapter 7: The Rendering Pipeline.
RealityEngine Graphics Kurt Akeley Silicon Graphics Computer Systems.
Creating Seamless Display Walls with a Single PC Grant Wallace and Han Chen.
Rasterization and Ray Tracing in Real-Time Applications (Games) Andrew Graff.
Reference: Message Passing Fundamentals.
Real-Time Geometric and Color Calibration for Multi-Projector Displays Christopher Larson, Aditi Majumder Large-Area High Resolution Displays Motivation.
DDDDRRaw: A Prototype Toolkit for Distributed Real-Time Rendering on Commodity Clusters Thu D. Nguyen and Christopher Peery Department of Computer Science.
IN4151 Introduction 3D graphics 1 Introduction to 3D computer graphics part 2 Viewing pipeline Multi-processor implementation GPU architecture GPU algorithms.
Introduction to Parallel Rendering: Sorting, Chromium, and MPI Mengxia Zhu Spring 2006.
Parallel Rendering Ed Angel
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Models and Architectures Ed Angel Professor of Computer Science, Electrical and Computer.
Fast Isosurface Visualization on a High-Resolution Scalable Display Wall Adam Finkelstein Allison Klein Kai Li Princeton University Sponsors: DOE, Intel,
Ch 1 Intro to Graphics page 1CS 367 First Day Agenda Best course you have ever had (survey) Info Cards Name, , Nickname C / C++ experience, EOS experience.
Workshop on Commodity-Based Visualization Clusters Learning From the Stanford/DOE Visualization Cluster Mike Houston, Greg Humphreys, Randall Frank, Pat.
Parallel Graphics Rendering Matthew Campbell Senior, Computer Science
GPU Graphics Processing Unit. Graphics Pipeline Scene Transformations Lighting & Shading ViewingTransformations Rasterization GPUs evolved as hardware.
Raghu Machiraju Slides: Courtesy - Prof. Huamin Wang, CSE, OSU
Computer Graphics: Programming, Problem Solving, and Visual Communication Steve Cunningham California State University Stanislaus and Grinnell College.
Workshop on Commodity-Based Visualization Clusters Big Data, Big Displays, and Cluster-Driven Interactive Visualization Sunday, October 27, 2002 Kenneth.
Sort-Last Parallel Rendering for Viewing Extremely Large Data Sets on Tile Displays Paper by Kenneth Moreland, Brian Wylie, and Constantine Pavlakos Presented.
Under the Hood: 3D Pipeline. Motherboard & Chipset PCI Express x16.
Electronic Visualization Laboratory University of Illinois at Chicago “Sort-First, Distributed Memory Parallel Visualization and Rendering” by E. Wes Bethel,
1 Computer Graphics Week3 –Graphics & Image Processing.
Chep06 1 High End Visualization with Scalable Display System By Dinesh M. Sarode, S.K.Bose, P.S.Dhekne, Venkata P.P.K Computer Division, BARC, Mumbai.
Programmable Pipelines. 2 Objectives Introduce programmable pipelines ­Vertex shaders ­Fragment shaders Introduce shading languages ­Needed to describe.
Large-Scale Polygon Rendering. Solutions Decimation Visibility Culling Parallel Rendering Others.
A Sorting Classification of Parallel Rendering Molnar et al., 1994.
C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 Going-through.
CS 450: COMPUTER GRAPHICS REVIEW: INTRODUCTION TO COMPUTER GRAPHICS – PART 2 SPRING 2015 DR. MICHAEL J. REALE.
Matrices from HELL Paul Taylor Basic Required Matrices PROJECTION WORLD VIEW.
Week 2 - Friday.  What did we talk about last time?  Graphics rendering pipeline  Geometry Stage.
Seminar II: Rendering Architectures Yan Cui Love Joy Mendoza Oscar Kozlowski John Tang.
The Graphics Rendering Pipeline 3D SCENE Collection of 3D primitives IMAGE Array of pixels Primitives: Basic geometric structures (points, lines, triangles,
CSC 461: Lecture 3 1 CSC461 Lecture 3: Models and Architectures  Objectives –Learn the basic design of a graphics system –Introduce pipeline architecture.
Introduction to Parallel Rendering Jian Huang, CS 594, Spring 2002.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Stream Processing Main References: “Comparing Reyes and OpenGL on a Stream Architecture”, 2002 “Polygon Rendering on a Stream Architecture”, 2000 Department.
Parallel Rendering. 2 Introduction In many situations, a standard rendering pipeline might not be sufficient ­Need higher resolution display ­More primitives.
1Computer Graphics Lecture 4 - Models and Architectures John Shearer Culture Lab – space 2
1 The Rendering Pipeline. CS788 Topic of HCI 2 Outline  Introduction  The Graphics Rendering Pipeline  Three functional stages  Example  Bottleneck.
Partitioning Screen Space 1 (An exciting presentation) © 2002 Brenden Schubert A New Algorithm for Interactive Graphics on Multicomputers * The Sort-First.
Programmable Pipelines Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts Director, Arts Technology Center University.
Introduction What is GPU? It is a processor optimized for 2D/3D graphics, video, visual computing, and display. It is highly parallel, highly multithreaded.
Parallel Rendering Ed Angel Professor Emeritus of Computer Science University of New Mexico 1 E. Angel and D. Shreiner: Interactive Computer Graphics 6E.
Advanced Computer Graphics Spring 2014 K. H. Ko School of Mechatronics Gwangju Institute of Science and Technology.
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
Subject Name: Computer Graphics Subject Code: Textbook: “Computer Graphics”, C Version By Hearn and Baker Credits: 6 1.
A SEMINAR ON 1 CONTENT 2  The Stream Programming Model  The Stream Programming Model-II  Advantage of Stream Processor  Imagine’s.
1 MPIglut: Powerwall Programming made Easier Dr. Orion Sky Lawlor U. Alaska Fairbanks WSCG '08,
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 2.
The Graphics Pipeline Revisited Real Time Rendering Instructor: David Luebke.
A Sorting Classification of Parallel Rendering Molnar et al., 1994.
1 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 Models and Architectures 靜宜大學 資訊工程系 蔡奇偉 副教授 2012.
Electronic visualization laboratory, university of illinois at chicago Sort Last Parallel Rendering for Viewing Extremely Large Data Sets on Tile Displays.
COMPUTER GRAPHICS CHAPTER 38 CS 482 – Fall 2017 GRAPHICS HARDWARE
- Introduction - Graphics Pipeline
Week 2 - Friday CS361.
VirtualGL.
Graphics Processing Unit
The Graphics Rendering Pipeline
Understanding Theory and application of 3D
Models and Architectures
Models and Architectures
Models and Architectures
Introduction to Computer Graphics with WebGL
Parallel I/O System for Massively Parallel Processors
Models and Architectures
Models and Architectures
Introduction to Computer Graphics
Presentation transcript:

Parallel Rendering 1

2 Introduction In many situations, standard rendering pipeline not sufficient ­Need higher resolution display ­More primitives than one pipeline can handle Want to use commodity components to build system that can render in parallel Use standard network to connect

3 Power Walls Where display large data sets? ­Need resolution comparable to data set to see detail Medical: CT / MRI Ocean / atmospheric Solutions? ­Multi LCD / Plasma panels ­Multiple projectors Commodity High-end

4 Tiled Display

5 CS Power Wall 6 dual processor Intellestations G Force 3 Graphics cards 6 commodity projectors (1024 x 768) Gigabit ethernet Back projected screen Shared facility with scalable system group ­Investigate OS and network issues

6 CS Power Wall

7

8 Power Wall Inexpensive but some problems ­Color matching ­Vignetting ­Alignment Overlap areas ­Synching ­Dark field

9 Graphics Architectures Pipeline Architecture ­SGI Geometry Engine ­Geometry passes through pipeline ­Hardware for clipping transformations texture mapping Project/Sort Clip Transform RasterizeScreen

10 Building Blocks Graphics processors consist of geometric blocks and rasterizers Geometric units: transformations, clipping, lighting Rasterization: scan conversion, shading Parallelize by using mutiple blocks Where to do depth check? R GGG RR

11 Sorting Paradigm Can categorize different ways of interconnecting blocks using sorting paradigm: each projector responsible for one area of screen  must sort primitives and assign to proper projector Algorithms categorized by where sorting occurs

12 Three Rendering Methods Sort-First Rendering Sort-Middle Rendering Sort-Last Rendering R GGG RR Sort GGGRRR R GGG RR Composite

13 Sort First Each R assigned to area of screen Each G coupled to own R Must sort primitives first Can use commodity cards R GGG RR Sort

14 Sort-First Rendering: Random Triangles Application

15 Sort Middle Gs and Rs decoupled Each G can be assigned any group of objects Each R assigned to area of screen Must sort between stages GGGRRR Sort

16 Sort Last Couple Rs and Gs Assign objects to Gs to load balance or via application Composite results at end R GGG RR Composite

17 Tree Compositing Composite in pairs Send color and depth buffers Each time half processors become idle

18 Binary Swap Compositing Each processor responsible for one part of display Pass data to right n times

19 Sort-Last Rendering: Random Triangles Application

20 Comparison Sort first ­Appealing but hard to implement Sort middle ­Used in hardware pipelines ­More difficult to implement with add-on commodity cards Sort last ­Easy to implement with compositing stage ­High network traffic

21 Mapping to Clusters Different architectures ­Shared vs distributed memory ­Communication overhead ­Parallel vs distributed algorithms Easy to do sort last Must evaluate communication cost Standard visualization strategies incorrect if transparency used

22 Vista Azul Experimental architecture from IBM ­donated to AHPCC Half Intel nodes, half AIX nodes Only one (PCI) graphics card per four processors Contained Scalable Graphics Engine (SGE): high-speed high-resolution color buffer ­accessible by all processors

23 Vista Azul

24 Comparison Between Sort-First and Sort-Last

25 Performance on PC Cluster Following experiments done by Ye Cong on CS cluster ­6 Intellestations ­Gigabit Ethernet ­GForce 3 graphics Show effect of network

26 Sort-First vs Sort Last Random Triangles

27 Sort First vs Sort Last Teapot

28 Azul vs Intellistations

29 Software for Parallel Rendering Write your own sort-first sort-last WireGL/Chromium (Stanford) Embed inside package (VTK)

30 WireGL: A Distributed Graphics System SW-based parallel rendering system ­unifies rendering power of collection of cluster nodes Scalability achieved by integrating parallel applications into sort-first parallel Rs Each node in cluster: either rendering client or rendering server Clients submit OpenGL commands concurrently to servers Servers render final physical image

31 Chromium Successor to WireGL Allows both sort first and sort last rendering Implemented on CS cluster Most of gain in performance because Chromium and WireGL can group state- changing commands separately from rendering commands

32 Chromium vs Sort First MRI rotation