Compact, Fast and Robust Grids for Ray Tracing

Slides:



Advertisements
Similar presentations
Sven Woop Computer Graphics Lab Saarland University
Advertisements

Christian Lauterbach COMP 770, 2/16/2009. Overview  Acceleration structures  Spatial hierarchies  Object hierarchies  Interactive Ray Tracing techniques.
Multilevel Streaming for Out-of-Core Surface Reconstruction
File Processing - Organizing file for Performance MVNC1 Organizing Files for Performance Chapter 6 Jim Skon.
Ray Tracing Ray Tracing 1 Basic algorithm Overview of pbrt Ray-surface intersection (triangles, …) Ray Tracing 2 Brute force: Acceleration data structures.
IIIT Hyderabad Hybrid Ray Tracing and Path Tracing of Bezier Surfaces using a mixed hierarchy Rohit Nigam, P. J. Narayanan CVIT, IIIT Hyderabad, Hyderabad,
A Coherent Grid Traversal Algorithm for Volume Rendering Ioannis Makris Supervisors: Philipp Slusallek*, Céline Loscos *Computer Graphics Lab, Universität.
Two-Level Grids for Ray Tracing on GPUs
Interactive Boolean Operations on Surfel-Bounded Solids Bart AdamsPhilip Dutré Katholieke Universiteit Leuven.
Rapid Visualization of Large Point-Based Surfaces Tamy Boubekeur Florent Duguet Christophe Schlick Presented by Xavier Granier.
RT06 conferenceVlastimil Havran On the Fast Construction of Spatial Hierarchies for Ray Tracing Vlastimil Havran 1,2 Robert Herzog 1 Hans-Peter Seidel.
Experiences with Streaming Construction of SAH KD Trees Stefan Popov, Johannes Günther, Hans-Peter Seidel, Philipp Slusallek.
Streaming Computation of Delaunay Triangulations Jack Snoeyink UNC Chapel Hill Jonathan Shewchuk UC Berkeley Yuanxin Liu UNC Chapel Hill Martin Isenburg.
GH05 KD-Tree Acceleration Structures for a GPU Raytracer Tim Foley, Jeremy Sugerman Stanford University.
Andrei Sharf Dan A. Alcantara Thomas Lewiner Chen Greif Alla Sheffer Nina Amenta Daniel Cohen-Or Space-time Surface Reconstruction using Incompressible.
Data Structures for Orthogonal Range Queries
Ray Tracing Dynamic Scenes using Selective Restructuring Sung-eui Yoon Sean Curtis Dinesh Manocha Univ. of North Carolina at Chapel Hill Lawrence Livermore.
Memory Efficient Acceleration Structures and Techniques for CPU-based Volume Raycasting of Large Data S. Grimm, S. Bruckner, A. Kanitsar and E. Gröller.
Haptic Cloth Rendering 6th Dutch-Belgian Haptics Meeting TUDelft, 21 st June 2006 Lode Vanacken Expertise centre for Digital Media (EDM) Hasselt University.
M. Lastra, R. García, Dpt. Lenguajes y Sistemas Informáticos E.T.S.I. Informática - University of Granada [jrevelle, mlastral, ruben, ugr.es.
Spectral Processing of Point-sampled Geometry
Interactive k-D Tree GPU Raytracing Daniel Reiter Horn, Jeremy Sugerman, Mike Houston and Pat Hanrahan.
RT08, August ‘08 Large Ray Packets for Real-time Whitted Ray Tracing Ryan Overbeck Columbia University Ravi Ramamoorthi Columbia University William R.
VPC3: A Fast and Effective Trace-Compression Algorithm Martin Burtscher.
Computer Graphics 2 Lecture x: Acceleration Techniques for Ray-Tracing Benjamin Mora 1 University of Wales Swansea Dr. Benjamin Mora.
Interactive Ray Tracing: From bad joke to old news David Luebke University of Virginia.
JPEG C OMPRESSION A LGORITHM I N CUDA Group Members: Pranit Patel Manisha Tatikonda Jeff Wong Jarek Marczewski Date: April 14, 2009.
Compressing Multiresolution Triangle Meshes Emanuele Danovaro, Leila De Floriani, Paola Magillo, Enrico Puppo Department of Computer and Information Sciences.
Interactive Volume Visualization of General Polyhedral Grids Philipp Muigg 1,3, Markus Hadwiger 2, Helmut Doleisch 3, M. Eduard Gröller 1 1, Vienna University.
Efficient Volume Visualization of Large Medical Datasets Stefan Bruckner Institute of Computer Graphics and Algorithms Vienna University of Technology.
Interactive Time-Dependent Tone Mapping Using Programmable Graphics Hardware Nolan GoodnightGreg HumphreysCliff WoolleyRui Wang University of Virginia.
Efficient Minimal Perfect Hash Language Models David Guthrie, Mark Hepple, Wei Liu University of Sheffield.
Data Structures for Orthogonal Range Queries A New Data Structure and Comparison to Previous Work. Application to Contact Detection in Solid Mechanics.
Accelerating Ray Tracing using Constrained Tetrahedralizations Ares Lagae & Philip Dutré 19 th Eurographics Symposium on Rendering EGSR 2008Wednesday,
On a Few Ray Tracing like Algorithms and Structures. -Ravi Prakash Kammaje -Swansea University.
1 Rendering Geometry with Relief Textures L.Baboud X.Décoret ARTIS-GRAVIR/IMAG-INRIA.
RACBVHs: Random-Accessible Compressed Bounding Volume Hierarchies Tae-Joon Kim Bochang Moon Duksu Kim Sung-Eui Yoon KAIST (Korea Advanced Institute of.
Institute of C omputer G raphics, TU Braunschweig Hybrid Scene Structuring with Application to Ray Tracing 24/02/1999 Gordon Müller, Dieter Fellner 1 Hybrid.
Random-Accessible Compressed Triangle Meshes Sung-eui Yoon Korea Advanced Institute of Sci. and Tech. (KAIST) Peter Lindstrom Lawrence Livermore National.
1 Real-time visualization of large detailed volumes on GPU Cyril Crassin, Fabrice Neyret, Sylvain Lefebvre INRIA Rhône-Alpes / Grenoble Universities Interactive.
Saarland University, Germany B-KD Trees for Hardware Accelerated Ray Tracing of Dynamic Scenes Sven Woop Gerd Marmitt Philipp Slusallek.
Click to edit Master title style HCCMeshes: Hierarchical-Culling oriented Compact Meshes Tae-Joon Kim 1, Yongyoung Byun 1, Yongjin Kim 2, Bochang Moon.
Interactive Rendering With Coherent Ray Tracing Eurogaphics 2001 Wald, Slusallek, Benthin, Wagner Comp 238, UNC-CH, September 10, 2001 Joshua Stough.
Fast BVH Construction on GPUs (Eurographics 2009) Park, Soonchan KAIST (Korea Advanced Institute of Science and Technology)
SIGGRAPH 2011 ASIA Preview Seminar Rendering: Accuracy and Efficiency Shinichi Yamashita Triaxis Co.,Ltd.
Boolean Operations on Surfel-Bounded Solids Using Programmable Graphics Hardware Bart AdamsPhilip Dutré Katholieke Universiteit Leuven.
Efficient Local Statistical Analysis via Integral Histograms with Discrete Wavelet Transform Teng-Yok Lee & Han-Wei Shen IEEE SciVis ’13Uncertainty & Multivariate.
Hierarchical Penumbra Casting Samuli Laine Timo Aila Helsinki University of Technology Hybrid Graphics, Ltd.
Dynamic Scenes Paul Arthur Navrátil ParallelismJustIsn’tEnough.
Hash Table March COP 3502, UCF 1. Outline Hash Table: – Motivation – Direct Access Table – Hash Table Solutions for Collision Problem: – Open.
Ray Tracing Animated Scenes using Motion Decomposition Johannes Günther, Heiko Friedrich, Ingo Wald, Hans-Peter Seidel, and Philipp Slusallek.
Interactive Ray Tracing of Dynamic Scenes Tomáš DAVIDOVIČ Czech Technical University.
Graphics Interface 2009 The-Kiet Lu Kok-Lim Low Jianmin Zheng 1.
Houston, Wiebe & Batty. (2004) RLE Sparse Level Sets. RLE Sparse Level Sets Ben Houston Mark Wiebe Christopher Batty Fluids and Level Sets Session.
Compact, Fast and Robust Grids for Ray Tracing Ares Lagae & Philip Dutré 19 th Eurographics Symposium on Rendering EGSR 2008Wednesday, June 25th.
Geometry Synthesis Ares Lagae Olivier Dumont Philip Dutré Department of Computer Science Katholieke Universiteit Leuven 10 August, 2004.
Real-Time Lens Blur Effects and Focus Control Sungkil Lee, Elmar Eisemann, and Hans-Peter Seidel Sunyeong Kim Nov. 23 nd
Efficient Ray Tracing of Compressed Point Clouds Erik Hubo Tom Mertens Tom Haber Philippe Bekaert Expertise Centre for Digital Media Hasselt University.
Ray Tracing Acceleration (5). Ray Tracing Acceleration Techniques Too Slow! Uniform grids Spatial hierarchies K-D Octtree BSP Hierarchical grids Hierarchical.
Path/Ray Tracing Examples. Path/Ray Tracing Rendering algorithms that trace photon rays Trace from eye – Where does this photon come from? Trace from.
Ray Tracing Acceleration (1). Acceleration of Ray Tracing Goal: Reduce the number of ray/primitive intersections.
1 The Method of Precomputing Triangle Clusters for Quick BVH Builder and Accelerated Ray Tracing Kirill Garanzha Department of Software for Computers Bauman.
Fast and Robust Hashing for Database Operators
Hybrid Ray Tracing and Path Tracing of Bezier Surfaces using a mixed hierarchy Rohit Nigam, P. J. Narayanan CVIT, IIIT Hyderabad, Hyderabad, India.
Real-Time Ray Tracing Stefan Popov.
Hybrid Ray Tracing of Massive Models
Accelerated Single Ray Tracing for Wide Vector Units
Efficient Document Analytics on Compressed Data: Method, Challenges, Algorithms, Insights Feng Zhang †⋄, Jidong Zhai ⋄, Xipeng Shen #, Onur Mutlu ⋆, Wenguang.
Fully-dynamic aimGraph
Boolean Operations for Free-form Models Represented in Geometry Images
Presentation transcript:

Compact, Fast and Robust Grids for Ray Tracing Ares Lagae & Philip Dutré Katholieke Universiteit Leuven Wednesday, 13 August

Contributions Two memory-efficient representations for grids for ray tracing Compact grid method  Optimal grid representation (1 word / cell, 1 word / object reference) Hashed grid method  Applied perfect spatial hashing to grids for ray tracing Simple and efficient 1

slower (super-linear) Motivation Acceleration structures for ray tracing Kd-tree, BVH, … Grid Build time slower (super-linear) faster (linear) Render time faster slower 2  Minimize time to image Time to image = build time + render time Especially for dynamic scenes

Motivation Algorithms in general  Minimize memory footprint CPU-bound Execution time = f( CPU speed ) Memory-bound Execution time = f( memory access speed )  Accelerate by decreasing memory footprint  Minimize memory footprint Especially for large models 3

Grid Data Structures Grid and linearized grid 1 2 1 2 2D 2D 2 1 C A 1 2 1 2 2D 2D 2 1 C A linearize B 4 1 2 3 4 5 6 7 8 1D

Grid Data Structures Data structure using linked lists 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 B B A C C A C C 5 B B 1 word / cell 2/3 words / object reference A

Grid Data Structures Data structure using dynamic arrays 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 2 2 1 2 1 2 1 4 3 2 2 2 1 2 1 2 1 B B A A B A C C B C 6 C 3 words / cell 1-2 words / object reference : unused space

Compact Grid Data structure Concatenate object lists, store begin index 1 2 3 4 4 4 5 6 7 8 1 2 3 3 3 3 3 3 3 6 8 9 10 11 7 B B A A B C B C A C C 1 2 3 3 3 3 3 4 4 4 4 5 5 5 6 7 8 9 10 11  1 word / cell, 1 word / object reference

Compact Grid Build algorithm (Bound – Count – Accumulate – Insert)  Compute bounding box of objects  Determine grid resolution 8  Grid size linear in number of objects

Compact Grid Build algorithm (Bound – Count – Accumulate – Insert)  Compute size of object lists (1st pass) 1 2 3 4 5 6 7 8 1 1 1 3 2 1 1 1 9 1 2 3 4 5 6 7 8 9 10 11

Compact Grid Build algorithm (Bound – Count – Accumulate – Insert)  Compute indices of object lists 1 2 3 4 5 6 7 8 1 2 3 3 3 6 8 9 10 11 10 1 2 3 4 5 6 7 8 9 10 11

Compact Grid Build algorithm (Bound – Count – Accumulate – Insert)  Reversely insert the object references (2nd pass) 1 2 3 4 5 6 7 8 1 2 3 3 3 5 8 9 10 11 11 C 1 2 3 4 5 6 7 8 9 10 11

Compact Grid Build algorithm (Bound – Count – Accumulate – Insert)  Reversely insert the object references (2nd pass) 1 2 3 4 5 6 7 8 1 2 3 3 3 4 8 9 10 11 11 B C 1 2 3 4 5 6 7 8 9 10 11

Compact Grid Build algorithm (Bound – Count – Accumulate – Insert)  Reversely insert the object references (2nd pass) 1 2 3 4 5 6 7 8 1 2 3 3 3 3 8 9 10 11 11 A B C 1 2 3 4 5 6 7 8 9 10 11

Compact Grid Build algorithm (Bound – Count – Accumulate – Insert)  Reversely insert the object references (2nd pass) 1 2 3 4 5 6 7 8 1 2 3 3 3 6 8 9 10 11 B B A A B C B C A C C 1 2 3 4 5 6 7 8 9 10 11

Compact Grid Build algorithm Traversal algorithm Time complexity  Linear in the number of objects Space complexity Traversal algorithm Any grid traversal algorithm 12

Results Comparison to traditional grid data structures Memory usage Build time 13 list array compact

Hashed Grid Reduce memory footprint even further Redundancy Fast build algorithm Efficient access during traversal Redundancy Object lists?  no Experiments with object list compression failed Cells?  yes Grid is sparse, up to 99% of the cells are empty 14

Hashed Grid Row displacement compression C 1 5 11 12 15 15

Hashed Grid Row displacement compression C O 1 5 11 12 15 15 H

Hashed Grid Row displacement compression C O 1 1 5 11 12 15 15 H H 1

Hashed Grid Row displacement compression C O 1 1 1 1 1 1 1 1 1 5 5 5 5 1 1 1 5 5 5 5 5 5 1 5 5 5 11 11 11 11 11 12 12 12 12 12 12 15 15 15 15 15 H 1 1 5 5

Hashed Grid Row displacement compression C O 1 1 1 1 1 1 1 1 1 1 1 1 5 1 1 1 1 1 5 5 5 5 5 5 5 5 1 5 5 5 5 11 11 11 11 11 11 1 11 11 11 12 12 12 12 12 12 12 12 12 15 15 15 15 15 15 15 H 1 5 11 11

Hashed Grid Row displacement compression C O 1 1 1 1 5 1 5 5 5 11 1 11 1 1 1 5 1 5 5 5 11 1 11 11 11 12 15 3 12 12 12 15 15 15 15 H 1 5 12 11 11 15 15

Hashed Grid Row displacement compression C[i,j]  H[O[i] + j] O 1 1 3 1 1 3 15 C[i,j]  H[O[i] + j] H 1 1 5 5 12 12 11 11 15

|D| + |O| + |H| << |C| Hashed Grid Row displacement compression D O 1 1 3 15 |D| + |O| + |H| << |C| H 1 1 1 1 1 5 5 5 5 12 12 12 11 11 15

Hashed Grid Build algorithm Time complexity: Bound Compute domain bits Compute hash function Count Accumulate Insert Time complexity: Added Now work directly on the hash table instead of the linearized cell array 16

Results Compact grid  Hashed grid Scene: 3.64 M triangles, 124.84 MB Memory object lists: 28.84 MB Memory cells: 55.48 MB  6.20 MB Build time: 0.39 s  0.72 s Render time: 2.49 s  2.52 s Cruiser 17 Scene: 28.06 M triangles, 343.32 MB Memory object lists: 69.78 MB Memory cells: 152.75 MB  8.97 MB Build time: 1.17 s  1.76 s Render time: 1.55 s  1.43 s Thai Statue

Results Comparison to traditional grid data structures Memory usage Build time 18 list array compact hashed

Scene: 260 K triangles - FPS: 8.38 FPS (512 x 512) Applications Interactive ray tracing of dynamic scenes 19 Scene: 260 K triangles - FPS: 8.38 FPS (512 x 512)

Applications Ray tracing large models (16 GB workstation) Scene: 56.23 M triangles, 1.89 GB Time to image: 7.55 s / 10.21 s Memory usage: 1.17 GB / 379.94 MB David 20 Scene: 372.77 M triangles, 12.50 GB Time to image: - / 60.75 s Memory usage: - / 2.36 GB St. Matthew

Conclusion & Future Work Two memory-efficient representations for grids for ray tracing Compact grid method  Optimal grid representation (1 word / cell, 1 word / object reference) Hashed grid method  Applied perfect spatial hashing to grids for ray tracing Future Work Extend to hierarchical grids Extend to other acceleration structures 21

Thanks! Questions? http://www.cs.kuleuven.be/~ares/ Acknowledgments Ares Lagae is a Postdoctoral Fellow of the Research Foundation Flanders (FWO). The Stanford 3D Scanning Repository, The Digital Michelangelo Project, the bwfirt benchmark, Matthias Rolf, Bernhard Finkbeiner and Greg Ward.

Robust Grid Traversal Discard intersections outside of cell  Not robust {} {} {…} {…}

Regular grid traversal Robust Grid Traversal Discard intersections outside of cell  Not robust Regular grid traversal

Regular grid traversal Robust Grid Traversal  Do not discard intersections outside of cell Keep closest intersection, terminate after the intersection Regular grid traversal Robust grid traversal

Parallelization Using sort-middle approach of Ize et al. Asian Dragon Nature