Faculty of Computer Science Computer Graphics Group. Final Diploma Examination



Similar documents
Efficient Storage, Compression and Transmission

Parallel Simplification of Large Meshes on PC Clusters

Multiresolution 3D Rendering on Mobile Devices

How To Create A Surface From Points On A Computer With A Marching Cube

A 3d particle visualization system for temperature management

SECONDARY STORAGE TERRAIN VISUALIZATION IN A CLIENT-SERVER ENVIRONMENT: A SURVEY

Off-line Model Simplification for Interactive Rigid Body Dynamics Simulations Satyandra K. Gupta University of Maryland, College Park

A FRAMEWORK FOR REAL-TIME TERRAIN VISUALIZATION WITH ADAPTIVE SEMI- REGULAR MESHES

Bernice E. Rogowitz and Holly E. Rushmeier IBM TJ Watson Research Center, P.O. Box 704, Yorktown Heights, NY USA

3D Visualization of particle system with extracted data from sensor

QEM-Filtering: A New Technique For Feature-Sensitive Terrain Mesh Simplification

Dual Marching Cubes: Primal Contouring of Dual Grids

NVIDIA IndeX Enabling Interactive and Scalable Visualization for Large Data Marc Nienhaus, NVIDIA IndeX Engineering Manager and Chief Architect

Rendering Microgeometry with Volumetric Precomputed Radiance Transfer

Cellular Computing on a Linux Cluster

Introduction to Computer Graphics

Lecture Notes, CEng 477

Stream Processing on GPUs Using Distributed Multimedia Middleware

Advanced Rendering for Engineering & Styling

CUBE-MAP DATA STRUCTURE FOR INTERACTIVE GLOBAL ILLUMINATION COMPUTATION IN DYNAMIC DIFFUSE ENVIRONMENTS

Using Photorealistic RenderMan for High-Quality Direct Volume Rendering

Computer Graphics AACHEN AACHEN AACHEN AACHEN. Public Perception of CG. Computer Graphics Research. Methodological Approaches

Performance Monitoring of Parallel Scientific Applications

Animated Models Simplification with Local Area Distortion and Deformation Degree Control

Consolidated Visualization of Enormous 3D Scan Point Clouds with Scanopy

Efficient DNS based Load Balancing for Bursty Web Application Traffic

OctaVis: A Simple and Efficient Multi-View Rendering System

Visualizing Data: Scalable Interactivity

Image Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg

Location tracking: technology, methodology and applications

Parallel Computing. Benson Muite. benson.

- An Essential Building Block for Stable and Reliable Compute Clusters

Volume visualization I Elvins

Glencoe. correlated to SOUTH CAROLINA MATH CURRICULUM STANDARDS GRADE 6 3-3, , , 4-9

INTRODUCTION TO RENDERING TECHNIQUES

Remote Graphical Visualization of Large Interactive Spatial Data

Modelling 3D Avatar for Virtual Try on

On the Placement of Management and Control Functionality in Software Defined Networks

Dual Contouring of Hermite Data

Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012

Segmentation of building models from dense 3D point-clouds

Efficient Simplification of Point-Sampled Surfaces

Everyday Mathematics. Grade 4 Grade-Level Goals CCSS EDITION. Content Strand: Number and Numeration. Program Goal Content Thread Grade-Level Goal

Ching-Yung Lin, Ph.D. Adjunct Professor, Dept. of Electrical Engineering and Computer Science IBM Chief Scientist, Graph Computing. October 29th, 2015

Introduction to Computer Graphics. Reading: Angel ch.1 or Hill Ch1.

Everyday Mathematics. Grade 4 Grade-Level Goals. 3rd Edition. Content Strand: Number and Numeration. Program Goal Content Thread Grade-Level Goals

Scalability and Classifications

Principles and characteristics of distributed systems and environments

Pre-Algebra Academic Content Standards Grade Eight Ohio. Number, Number Sense and Operations Standard. Number and Number Systems

Parallel Analysis and Visualization on Cray Compute Node Linux

OpenFlow Based Load Balancing

Hardware design for ray tracing

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

Dynamic Network Resources Allocation in Grids through a Grid Network Resource Broker

Removing Performance Bottlenecks in Databases with Red Hat Enterprise Linux and Violin Memory Flash Storage Arrays. Red Hat Performance Engineering

Algebra Academic Content Standards Grade Eight and Grade Nine Ohio. Grade Eight. Number, Number Sense and Operations Standard

Cray: Enabling Real-Time Discovery in Big Data

3D Face Modeling. Vuong Le. IFP group, Beckman Institute University of Illinois ECE417 Spring 2013

3D Modelling in Blender Based on Polygonal Data

3D Distance from a Point to a Triangle

Proposal for a Virtual 3D World Map

Phases, Activities, and Work Products. Object-Oriented Software Development. Project Management. Requirements Gathering

GPU for Scientific Computing. -Ali Saleh

Thea Omni Light. Thea Spot Light. Light setup & Optimization

Cluster Scalability of ANSYS FLUENT 12 for a Large Aerodynamics Case on the Darwin Supercomputer

GUI GRAPHICS AND USER INTERFACES. Welcome to GUI! Mechanics. Mihail Gaianu 26/02/2014 1

EBERSPÄCHER ELECTRONICS automotive bus systems. solutions for network analysis

Performance of Dynamic Load Balancing Algorithms for Unstructured Mesh Calculations

COMP175: Computer Graphics. Lecture 1 Introduction and Display Technologies

Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

Multi-GPU Load Balancing for Simulation and Rendering

Load balancing in a heterogeneous computer system by self-organizing Kohonen network

Prentice Hall: Middle School Math, Course Correlated to: New York Mathematics Learning Standards (Intermediate)

A Framework for Performance Analysis and Tuning in Hadoop Based Clusters

Building an Inexpensive Parallel Computer

Model Repair. Leif Kobbelt RWTH Aachen University )NPUT $ATA 2EMOVAL OF TOPOLOGICAL AND GEOMETRICAL ERRORS !NALYSIS OF SURFACE QUALITY

NVIDIA IndeX. Whitepaper. Document version June 2013

Voronoi Treemaps in D3

Overlapping Data Transfer With Application Execution on Clusters

Practical Data Visualization and Virtual Reality. Virtual Reality VR Software and Programming. Karljohan Lundin Palmerius

Distributed Dynamic Load Balancing for Iterative-Stencil Applications

Delaunay Based Shape Reconstruction from Large Data

CCNA 1: Networking Basics. Cisco Networking Academy Program Version 3.0

A Framework for Creating a Distributed Rendering Environment on the Compute Clusters

Blender in Research & Education

HPC with Multicore and GPUs

NEW applications of wireless multi-hop networks, such

CHAPTER FIVE RESULT ANALYSIS

REMOTE RENDERING OF COMPUTER GAMES

Load Balancing. Load Balancing 1 / 24

MeshLab and Arc3D: Photo-Reconstruction and Processing of 3D meshes

Tableau Server Scalability Explained

A NEW METHOD OF STORAGE AND VISUALIZATION FOR MASSIVE POINT CLOUD DATASET

CS 378: Computer Game Technology

Enabling GPU-accelerated High Performance Geospatial Line-of-Sight Calculations

Transcription:

Faculty of Computer Science Computer Graphics Group Final Diploma Examination Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations Author: Tino Schwarze Advisors: Prof. Dr. G. Brunnett / Dipl.-Inf. M. Lorenz Chemnitz, 6th May 2003

Introduction VR simulations require very complex scenes to allow high degree of interaction and realism Erikson 1996 1 : For every computer graphics system, there exists a model complex enough to bring its performance to a crawl. speeding up rendering is researched a lot assumption here: scene consists of many complex objects skip rendering of unobservable details common approach: Level-of-Detail (LOD) 1 Erikson, Carl. 1996. Polygonal Simplification: An Overview. University of North Carolina, Chapel Hill. Technical Report TR96-016. Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 2

Static Level-of-Detail fixed number of detail levels for different distances modelled manually or via preprocessing (very time-consuming) weaknesses might contain superfluous detail levels lowest level might still be too detailed for certain situations independent of picture geometry (low vs. high resolution output device, e.g. mobile phone vs. Powerwall at the Visualize Center) Original LOD Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 3

Adaptive Level-of-Detail simplifications of objects computed on demand can be fitted to current viewing situation geometry simplification usually computing intensive try to parallelize algorithms themselves usually not parallelizable parallel reduction of disjoint parts of the scene (here: subgraphs) simulation / rendering requests results parallel reduction Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 4

Notations node scene graph object = subgraph Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 5

Geometry Simplification classes of algorithms decimating vs. generating (refining) topology preserving vs. topology altering constraints on topology of original geometry (e.g. only manifold surfaces 2 ) here: polygon sets as input objects of arbitrary topology only few algorithms known which work on arbitrary topology examples: Uniform Vertex Clustering (Rossignac and Borrel 1993) Pair Contraction with Quadric Error Metrics (Garland and Heckbert 1997) disk. 2 A manifold is a surface for which the infinitesimal neighborhood of every point is topologically equivalent to a Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 6

Reuse of Reductions computing a simplification is too slow for realtime latency too high computed reductions should be cached validity of cached reductions may depend on picture geometry, camera parameters object geometry (includes transformation of parts of it) distance from camera viewing angle lighting 3 simplification algorithm delivers validity constraints with reduced geometry 3 Xia, Julie C. / Varshney, Amitabh. 1996. Dynamic View-Dependent Simplification for Polygonal Models. In: Proceedings of the IEEE Visualization 96. Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 7

System Architecture required system components simulation rendering simplification architecture depends on available resources: HP Visualize Center II at the VR lab Chemnitz Linux Cluster (CLiC) simulation and rendering performed by Visualize Center simplification performed by CLiC CORBA used for communication Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 8

Physical Architecture HP Visualize Center II URZ backbone Chemnitz Linux Cluster (CLiC) simulation & rendering rendering rendering request generation result processing request processing request processing request processing request scheduling Fast Ethernet (100 MBit/s) Gigabit Ethernet (1000 MBit/s) computer communication via CORBA Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 9

Software Architecture Simulation Reduction File Parser Reduction Plugin Reducer Scheduler Scene Converter Simulator depends on file format depends on rendering toolkit SceneGraph Renderer CORBA Object Reducer Object Reducer.. Object Reducer Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 10

Scheduler Purpose central component of distributed application distributes scene graph accumulates changes in transformation and propagates to reducers on demand (no further changes in scene supported yet) distributes per-frame information on demand picture geometry (width and height) modelview and projection matrix Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 11

Results evaluated algorithms: PropSlim (Michael Garland): based on pair-contraction, uses quadrics for accumulating error vtkdecimatepro improved version of Schroeder s algorithm described in Decimation of Triangle Meshes (1992) vtkquadricdecimation implemented after Hughues Hoppe s Vis 99 paper New Quadric Metric for Simplifying Meshes with Appearance Attributes vtkquadricclustering implemented after Peter Lindstrom s Siggraph 2000 paper Out-of-Core Simplification of Large Polygonal Models algorithms sub-optimal for reduction of VR objects: vtkquadricdecimation support vertex attributes only PropSlim and only suitable for special scenes Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 12

Benchmark scene with several objects and animated camera movement without reduction with reduction differences hardly noticeable! Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 13

Benchmark duration: 300 seconds in simulation time at 0.1 s per frame = 3000 frames reduction by 7 nodes of CLiC (+ 1 for scheduling) measured latency between start and end of rendering (does not include simulation, does include request generation, receiving and processing) improvement in average rendering latency 17 frames/s to 22 frames/s (30 % speedup) 23 frames/s when not counting one-time initialization (35 % speedup) Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 14

Benchmark Result rendering latency per picture (s) 10 1 0.1 without reduction with reduction average without reduction average with reduction 0.01 0 500 1000 1500 2000 2500 3000 frame number Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 15

Further Work / Suggested Improvements asynchronous rendering (don t wait for results to be available) how many outstanding reductions? worst case: reductions not useable when arrived introducing abstract reduction parameter might be useful (would allow speculative request of reductions) heuristics to figure out usefulness of a reduction in current situation beneficial for cache purging asynchronous rendering could use most useful reduction in meantime more efficient transport of geometry data Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 16

Summary rendering can be speed up by using adaptive Level-of-Detail with parallel computation of detail levels scenes have to be suitable for this task implementations of simplification algorithms not yet suitable for all scenes adaptive Level-of-Detail probably works best with long VR sessions where a large cache of reductions can be built up architecture useful for other purposes, e.g. distributed rendering (with appropiate special hardware) Tino Schwarze: Communication Mechanisms for Parallel, Adaptive Level-of-Detail in VR Simulations 17

Thank You for Your attention.