Download presentation
Presentation is loading. Please wait.
Published byJarrod Valley Modified over 10 years ago
1
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Interactive Visualization and Collision Detection using Dynamic Simplification and Cache-Coherent Layouts Sung-Eui Yoon Dissertation defense talk Advisor: Prof. Dinesh Manocha
2
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 2 Goal Design algorithms for interactive visualization and collision detection between massive models
3
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 3 Interactive Visualization Walkthrough large man-made structures Investigate scientific simulation data
4
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 4 Collision Detection Main component of: Dynamic simulation Navigation and path planning Haptic rendering Virtual prototyping
5
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 5 Main Requirements Generality Handle any kind of polygonal models (e.g., CAD, scanned, isosurface models) Interactivity Provide at least 10 frames per second
6
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 6 Challenges Complex and massive models Ever-increasing model complexity Bunny model, 70K St. Matthew, 372M (10GB) Puget sound, 400M+
7
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 7 Challenges Complex and massive models Ever-increasing model complexity Power plant, 12M Double eagle tanker, 82M Boeing 777, 350M
8
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 8 Challenges Complex and massive models Ever-increasing model complexity 472M Isosurface from a turbulence simulation (LLNL)
9
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 9 Different Approaches Approximate algorithms Cache-coherent algorithms Output-sensitive algorithms Parallel algorithms
10
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 10 Different Approaches Approximate algorithms Cache-coherent algorithms Output-sensitive algorithms Parallel algorithms Use simplification while minimizing error
11
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 11 Different Approaches Approximate algorithms Cache-coherent algorithms Output-sensitive algorithms Parallel algorithms CPU or GPU Disk CachesMemory Minimize cache misses
12
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 12 Different Approaches Approximate algorithms Cache-coherent algorithms Output-sensitive algorithms Parallel algorithms Viewer Visible triangles Invisible triangles
13
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 13 Different Approaches Approximate algorithms Cache-coherent algorithms Output-sensitive algorithms Parallel algorithms
14
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 14 Different Approaches Approximate algorithms Dynamic simplifications Cache-coherent algorithms Cache-oblivious layouts Output-sensitive algorithms Parallel algorithms, etc
15
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 15 View-Dependent Rendering [Clark 76, Funkhouser and Sequin 93] Static level-of-details (LODs) Dynamic (or view-dependent) simplification Viewer Object Lower resolution
16
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 16 Static LODs 50,000 faces 10,000 faces 2,000 faces poppop Courtesy of [Hoppe 97]
17
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 17 Courtesy of [Hoppe 97] Dynamic Simplification Provides smooth and varying LODs over the mesh 1 st persons view 3 rd persons view
18
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 18 Dynamic Simplification Progressive mesh [Hop96] View-dependent progressive meshes [Hoppe 97] Merge tree [Xia and Varshney 97] Octree-based vertex clustering [Luebke and Erikson 97] View-dependent tree [El-Sana and Varshney 99] Out-of-core approaches [Decoro and Pajarola 02; Lindstrom 03]
19
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 19 Vertex Hierarchy Edge Collapse Va Vb Va Vc Vertex Split Vertex Hierarchy Vc Va Vb
20
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 20 View-Dependent Refinement Vertex Hierarchy Front representing a LOD mesh
21
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 21 Dynamic Simplification: Issues Representation Construction Runtime computation Integration with other acceleration techniques
22
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 22 Dynamic Simplification: Issues Representation Construction Runtime computation Integration with other acceleration techniques 22+GB for 100M triangles [Hoppe 97]
23
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 23 Dynamic Simplification: Issues Representation Construction Runtime computation Integration with other acceleration techniques
24
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 24 Dynamic Simplification: Issues Representation Construction Runtime computation Integration with other acceleration techniques Rendering throughput of 3M triangles per sec [Lindstrom 03]
25
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 25 Dynamic Simplification: Issues Representation Construction Runtime computation Integration with other acceleration techniques GPU Small vertex cache Many cache misses
26
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 26 Dynamic Simplification: Issues Representation Construction Runtime computation Integration with other acceleration techniques
27
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 27 Parallel View-Dependent Rendering [Baxter et al. 02] Static LODs SGI Reality Monster 32 processors 8 GPUs 16GB RAM (3) (2)
28
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 28 Live Demo – View- Dependent Rendering Pentium4 GeForce Go 6800 Ultra 1GB RAM 20 Pixels of error
29
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 29 Thesis Statement We can design interactive visualization and collision detection algorithms between massive models by using dynamic simplification and cache-coherent layouts
30
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 30 Thesis Statement We can design interactive visualization and collision detection algorithms between massive models by using dynamic simplification and cache-coherent layouts
31
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 31 Thesis Statement We can design interactive visualization and collision detection algorithms between massive models by using dynamic simplification and cache-coherent layouts
32
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 32 Outline Dynamic simplification Approximate collision detection Cache-oblivious layouts Conclusion & future work
33
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 33 Outline Dynamic simplification Approximate collision detection Cache-oblivious layouts Conclusion & future work
34
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 34 New Results New dynamic simplification algorithm Clustered hierarchy of progressive meshes (CHPM) Out-of-core construction
35
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 35 Outline Dynamic simplification CHPM representation Construction Results Approximate collision detection Cache-oblivious layouts Conclusion & future work
36
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 36 Outline Dynamic simplification CHPM representation Construction Results Approximate collision detection Cache-oblivious layouts Conclusion & future work
37
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 37 Clustered Hierarchy of Progressive Meshes (CHPM) Novel dynamic simplification representation Cluster hierarchy Progressive meshes PM 1 PM 3 PM 2
38
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 38 Clustered Hierarchy of Progressive Meshes (CHPM) Cluster hierarchy Clusters are spatially localized regions of the mesh Used for visibility computations and out-of- core rendering
39
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 39 Clustered Hierarchy of Progressive Meshes (CHPM) Progressive mesh (PM) [Hoppe 96] Each cluster contains a PM as an LOD representation PM: Base mesh Vertex split 0 Vertex split 1 Vertex split n …..
40
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 40 Two-Levels of Refinement at Runtime Coarse-grained view-dependent refinement Provided by selecting a front in the cluster hierarchy Inter-cluster level refinements Front
41
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 41 Two-Levels of Refinement at Runtime Coarse-grained view-dependent refinement Provided by selecting a front in the cluster hierarchy Inter-cluster level refinements Cluster-split
42
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 42 Two-Levels of Refinement at Runtime Coarse-grained view-dependent refinement Provided by selecting a front in the cluster hierarchy Inter-cluster level refinements Cluster-split Cluster-collapse
43
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 43 Two-Levels of Refinement at Runtime Fine-grained local refinement Supported by performing vertex splits in PMs Intra-cluster refinements Vertex split 0 Vertex split 1 Vertex split n ….. PM
44
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 44 Main Properties of CHPM Low refinement cost 1 or 2 order of magnitude lower than a vertex hierarchy Alleviates visual popping artifacts Provides smooth transition between different LODs
45
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 45 Video – Comparison of CHPM with Vertex Hierarchy 4X overall frame rate speedup 38X refinement speedup
46
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 46 Outline Dynamic simplification CHPM representation Construction Results Approximate collision detection Cache-oblivious layouts Conclusion & future work
47
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 47 Overview of Building a CHPM Cluster decomposition Input model Cluster hierarchy generation Hierarchical simplification CHPM Performed out-of-core
48
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 48 Overview of Building a CHPM Cluster decomposition Input model Cluster hierarchy generation Hierarchical simplification CHPM
49
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 49 Overview of Building a CHPM Cluster decomposition Input model Cluster hierarchy generation Hierarchical simplification CHPM
50
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 50 Overview of Building a CHPM Cluster decomposition Input model Cluster hierarchy generation Hierarchical simplification CHPM
51
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 51 Out-of-Core Hierarchical Simplification Simplifies clusters bottom-up
52
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 52 Out-of-Core Hierarchical Simplification Simplifies clusters bottom-up PM
53
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 53 Boundary Simplification C B Cluster hierarchy AD EF dependency Boundary constraints
54
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 54 Boundary Simplification C B Cluster hierarchy AD EF dependency F E
55
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 55 Boundary Constraints Common problem in many hierarchical simplification algorithms [Hoppe 98; Prince 00; Govindaraju et al. 03]
56
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 56 Boundary Constraints
57
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 57 Boundary Constraints
58
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 58 Cluster Dependencies Replaces preprocessing constraints with runtime dependencies
59
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 59 Cluster Dependencies C B Cluster hierarchy AD EF dependency
60
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 60 Cluster Dependencies C B Cluster hierarchy AD EF dependency E F
61
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 61 Cluster Dependencies at Runtime C B Cluster hierarchy AD EF dependency Cluster-split Force cluster-split
62
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 62 Chained Dependency Inappropriate for refinements
63
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 63 Cluster Dependencies
64
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 64 Cluster Dependencies 227K triangles19K triangles 92% triangles reduced After creating cluster dependencies
65
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 65 Outline Dynamic simplification CHPM representation Construction Results Approximate collision detection Cache-oblivious layouts Conclusion & future work
66
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 66 Processing Time and Storage Requirements Process 30M triangles per hour CHPM requires 88MB per million vertices 224MB (Hoppes VDPM) [Hoppe 97] 108MB (XFastMesh) [DeCoro and Pajarola 02]
67
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 67 Runtime Performance Model Pixels of error Frame rate Mem. footprint Refinement time Power plant 128400MB1% Isosurface (100M) 2027600MB2% St. Matthew 129600MB2% 512x512 image resolution, GeForce 5950FX
68
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 68 Limitations Long preprocessing time 12 hours for St. Matthew model consisting of 372M triangles Performance depends on computed clusters
69
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 69 Summary Low refinement time Combines out-of-core, VDR, and visibility culling No assumption on input mesh Applied to various polygonal meshes (e.g., CAD, scanned, isosurface models)
70
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 70 Outline Dynamic simplification Approximate collision detection Cache-oblivious layouts Conclusion & future work
71
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 71 Goal Fast algorithm for collision detection between complex and massive models Handle any kind of polygonal models (e.g., polygon soup)
72
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 72 Problems High computation cost of exact query Depends on input model complexity and the number of colliding triangles High memory requirements 40GB for OBB-tree of 100M triangles [Gottschalk et al. 1996]
73
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 73 Our Solution Perform approximate query based on a simplified mesh
74
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 74 LOD-based Query Object A Object B Exact colliding regions
75
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 75 LOD-based Query Object A Simplified object A Object B Simplified object B Simplified colliding regions Exact colliding regions
76
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 76 LOD-based Query Object A Simplified object A Object B Simplified object B Exact colliding regions Simplified colliding regions
77
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 77 New Results Conservative LOD-based collision detection algorithm between massive models Clustered hierarchy of progressive meshes (CHPM) Conservative error metric
78
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 78 Outline Dynamic simplification Approximate collision detection Conservative error metric Results Cache-oblivious layouts Conclusion & future work
79
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 79 Outline Dynamic simplification Approximate collision detection Conservative error metric Results Cache-oblivious layouts Conclusion & future work
80
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 80 CHPM Representation Serve as a dual hierarchy for collision detection LOD hierarchy Bounding volume hierarchy Unified representation for rendering and collision detection
81
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 81 Main Properties of CHPM Allows a dramatic acceleration of collision detection Reduces the number of overlap tests Alleviates simulation discontinuities Provides smooth transition between colliding triangles of LODs
82
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 82 Given two original models, A 0 and B 0, and a separation distance, Exact Collision Detection Query Computes triangle pairs (t A 0, t B 0 ) such that t A A 0, t B B 0 and dist (t A 0, t B 0 ) <
83
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 83 LOD-based Query Given two CHPM representations, A and B, and a separation distance, with distance error bound,
84
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 84 such that dist (t A 0, t B 0 ) < where t A 0 simplifies into t A and t B 0 simplifies into t B Computes triangle pairs (t A, t B ) such that t A A, t B B and dist (t A, t B ) < LOD-based Query Original meshes Simplified meshes Simplification
85
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 85 Conservative Error Metric Dynamic simplification Determined by the user specified error, Original meshes Simplified meshes Simplification Conservative algorithm
86
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 86 Outline Dynamic simplification Approximate collision detection Conservative error metric Results Cache-oblivious layouts Conclusion & future work
87
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 87 Benchmark Models – Dynamic Simulation Lucy model: 28M triangles Turbine model: 1.7M triangles Impulse based rigid body simulation [Mirtich and Canny 1995]
88
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 88 Live Demo – Rigid Body Simulation Error bound: 0.1% of width of Lucy model Average query time: 18ms
89
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 89 Limitations Can be very conservative and compute many false positives Two concentric spheres in parallel proximity with a separation with
90
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 90 Summary Generality Conservative collision queries with reduced discontinuities
91
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 91 Outline Dynamic simplification Approximate collision detection Cache-oblivious layouts Conclusion & future work
92
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 92 Goal Compute cache-coherent layouts of polygonal meshes For visualization and collision detection Handle any kind of polygonal models (e.g., irregular geometry)
93
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 93 Motivation High growth rate of computational power of CPUs and GPUs Improvement factor during 1993 - 2004 Courtesy: Anselmo Lastra and http://www.hcibook.com/e3/online/moores-law/ during 99 - 04
94
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 94 Memory Hierarchies and Caches: I/O Model [Aggarwal and Vitter 88] CPU or GPU Fast memory or cache Slow memory Block transfer Disk 10 6 ns Access time: 10 2 ns 10 0 ns
95
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 95 Cache-Coherent Layouts Cache-Aware Optimized for particular cache parameters (e.g., block size) Cache-Oblivious Minimizes data access time without any knowledge of cache parameters Directly applicable to various hardware and memory hierarchies
96
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 96 Dynamic Simplification: Issues Representation Construction Runtime computation Integration with other acceleration techniques
97
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 97 Dynamic Simplification: Issues Representation Construction Runtime computation Integration with other acceleration techniques
98
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 98 Low Computation Speed Rendering throughput GPU capable of 100M+ triangles per sec Only achieved 20M triangles per sec Low cache utilization Cannot efficiently use triangle strips for dynamically generated geometry
99
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 99 New Results Algorithm to compute cache- oblivious layouts Cache-oblivious metric Multilevel optimization framework Applicable to multiresolution mesh
100
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 100 Realtime Captured Video – St. Matthew Model
101
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 101 Related Work Cache-coherent algorithms Mesh layouts
102
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 102 Cache-Coherent Algorithms Cache-aware [Coleman and McKinley 95, Vitter 01, Sen et al. 02] Cache-oblivious [Frigo et al. 99, Arge et al. 04] Focus on specific problems such as sorting and linear algebra computations!
103
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 103 Mesh Layouts Rendering sequences Triangle strips [Deering 95, Hoppe 99, Bogomjakov and Gotsman 02] Processing sequences [Isenburg and Gumhold 03, Isenburg and Lindstrom 04] Assume that globally the access pattern follows the layout order!
104
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 104 Mesh Layouts Space-filling curves [Sagan 94, Velho and Gomes 91, Pascucci and Frank 01, Lindstrom and Pascucci 01, Gopi and Eppstein 04] Assume geometric regularity! Z-curve:
105
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 105 Outline Dynamic simplification Approximate collision detection Cache-oblivious layouts Overview Results Conclusion & future work
106
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 106 Outline Dynamic simplification Approximate collision detection Cache-oblivious layouts Overview Results Conclusion & future work
107
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 107 Overview Multilevel optimization Cache-oblivious metric Local permutations vava vbvb vdvd vcvc Input graph vava vbvb vdvd vcvc Result 1D layout
108
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 108 Graph-based Representation Undirected graph, G = (V, E) Represents access patterns of applications Vertex Data element (e.g., mesh vertex or mesh triangle) Edge Connects two vertices if they are likely to be accessed sequentially vava vbvb vdvd vcvc
109
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 109 Problem Statement Vertex layout of G = (V, E) One-to-one mapping of vertices to indices in the 1D layout Compute a that minimizes the expected number of cache misses vava vbvb vdvd vcvc vava vbvb vdvd vcvc 1 234
110
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 110 Local Permutation vava vbvb vdvd vcvc vava vbvb vdvd vcvc vava vbvb vcvc vdvd Layout computation
111
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 111 Edge Span vava vbvb vdvd vcvc vava vbvb vdvd vcvc vava vbvb vcvc vdvd 2 1 Absolute value of index gap of two vertices in the layout 1 234 Indices of vertices
112
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 112 Expected Number of Cache Misses Cache miss probability function Edge span vava vbvb vdvd vcvc vava vbvb vdvd vcvc vava vbvb vcvc vdvd Differences of histograms of edge spans Edge span Number of edges Local permutation (dot product)
113
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 113 Expected Number of Cache Misses Cache miss probability function Edge span ? Assume monotonicity Differences of histograms of edge spans Edge span Number of edges
114
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 114 Probability Computation Cache miss probability function Edge span ? Compute a probability that cache misses decrease Differences of histograms of edge spans Edge span Number of edges
115
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 115 Geometric Formulation Cache miss probability function (p l ) Edge span = l ? p 2 p 1 0 Closed hyperspace Half-hyperspace mapping to probability functions reducing cache misses Differences of histograms of edge spans Edge span Number of edges 2D example
116
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 116 Geometric Volume Computations Time complexity Exact: [Lasserre and Zeron 01] Approximate: [Kannan et al. 97] where n is the number of hyperplanes
117
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 117 Fast and Approximate Volume Comparison Propose an approximate volume comparison Has linear time complexity Has very small error (0.2% compared to exact method)
118
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 118 Layout Optimization Find an optimal layout that minimizes our metric Combinatorial optimization problem [Diaz et al. 2002]
119
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 119 Multilevel Minimization Step 1: Coarsening
120
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 120 Multilevel Minimization Step 2: Ordering of coarsest graph
121
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 121 Multilevel Minimization Step 3: Refinement and local optimization
122
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 122 Outline Dynamic simplification Approximate collision detection Cache-oblivious layouts Overview Results Conclusion & future work
123
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 123 Layout Computation Time Process 140 million triangles per hour Takes 2.6 hours to lay out St. Matthew model (372 million triangles) 2.4GHz of Pentium 4 PC with 1 GB main memory
124
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 124 Edge Span Histograms of Different Layouts Cache-oblivious layout Spectral layout Original layout Edge span Number of edges > [Isenburg and Lindstrom 05]
125
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 125 Applications View-dependent rendering Collision detection Isocontour extraction
126
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 126 View-Dependent Rendering Layout vertices and triangles of CHPM Reduce misses in GPU vertex cache
127
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 127 View-Dependent Rendering Models# of Tri. Our layout CHPM layout St. Matthew 372M106 M/s23 M/s Isosurface100M90 M/s20 M/s Double eagle tanker 82M47 M/s22 M/s 4.5X 2.1X Peak performance: 145 M tri / s on GeForce 6800 Ultra
128
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 128 Comparison with Optimal Cache Miss Ratio Our layout CHPM layout Optimal cache miss ratio [Bar-Yehuda and Gotsman 96] Test model: Bunny model
129
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 129 Comparison with Hoppes Rendering Sequence Our layout [Hoppe 99] Optimized for 16 vertex cache size with FIFO replacement Optimized for no particular cache size Test model: Bunny model
130
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 130 Comparison with Space Filling Curve on Power Plant Model Our layout Space filling curve (Z-curve) [Sagan 94]
131
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 131 Collision Detection Bounding volume hierarchies Widely used to accelerate the performance of collision detection Traversed to find contacting area Uses pre-computed layouts of OBB trees [Gottschalk et al. 96]
132
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 132 Rigid Body Simulation
133
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 133 Collision Detection Time 2X on average Depth-first layout Cache-oblivious layout
134
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 134 Isocontour Extraction Contour tree [van Kreveld et al. 97] Use mesh as the input graph Extract an isocontour that is orthogonal to z-axis Puget sound, 134 M triangles Isocontour z(x,y) = 500m
135
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 135 Comparison – First Extraction of Z(x,y) = 500m Relative Performance over Z-axis sorted layout Nearly optimized for particular isocontour 2 21 13 1 Disk access time is bottleneck
136
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 136 Comparison – Second Extraction of Z(x,y) = 500m Relative Performance over Z-axis sorted layout 2 21 13 379 212 1 0.8 Memory and L1/L2 cache access times are bottleneck
137
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 137 Limitations Monotonicity assumption May not work well for all applications Does not compute global optimum Greedy solution
138
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 138 Summary General Applicable to all kinds of polygonal models Works well for various applications Cache-oblivious Can have benefit for all levels of the memory hierarchy (e.g. CPU/GPU caches, memory, and disk) No modification of runtime applications Only layout computation Source codes are available as a library called OpenCCL
139
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 139 Outline Dynamic simplification & visibility culling Cache-oblivious layouts Approximate collision detection Conclusion & future work
140
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 140 Conclusion Dynamic simplification and cache-oblivious layouts Applied them to visualization and collision detection Demonstrated with a wide variety of polygonal models Achieved interactive performance on commodity hardware
141
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 141 New Results Dynamic simplification method CHPM representation Out-of-core construction method Application to collision detection Cache-oblivious layout algorithm Cache-oblivious metric Multilevel minimization
142
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 142 Future Work on Visualization Achieve end-to-end interactivity Requires no or minimal preprocessing Handle time-varying geometry Just one instance among 27K time steps during simulation
143
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 143 Future Work on Collision Detection Handle dynamically deformable models (e.g. cloth simulation) Requires no or minimal preprocessing Support penetration depth computations Obj 1Obj 2
144
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 144 Future Work on Cache- Coherent Layouts Develop cache-aware layouts Investigate optimality Apply to other applications and other representations Shortest path computation, etc. Provide multiresolution functionality from layouts [Pascucci and Frank 01]
145
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 145 Publications S.-E. Yoon, B. Salomon, R. Gayle, and D. Manocha, Quick-VDR: Interactive View-Dependent Rendering of Massive Models IEEE Vis. 04 & Invited at IEEE Tran. on Vis. and Comp. Graphics 05 S.-E. Yoon, B. Salomon, and D. Manocha, Interactive View-Dependent Rendering with Conservative Occlusion Culling in Complex Environment IEEE Vis. 03
146
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 146 Publications S.-E. Yoon, P. Lindstrom, V. Pascucci, and D. Manocha, Cache-Oblivious Mesh Layouts ACM SIGGRAPH (ACM Tran. on Graphics) 05 S.-E. Yoon, B. Salomon, M. Lin and D. Manocha, Fast Collision Detection between Massive Models using Dynamic Simplification Eurographics Sym. of Geometric Processing 04
147
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 147 Acknowledgements Advisor, Dinesh Manocha Other committee members Anselmo Lastra, Ming C. Lin, Peter Lindstrom, Valerio Pascucci Other faculty and staff members
148
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 148 Acknowledgements Coauthors and colleagues Bill Baxter, Russ Gayle, Naga Govindaraju, Martin Isenburg, Jayeon Jung, Ted Kim, Young Kim, Brandon Lloyd, Miguel Otaduy, Stephane Redon, Brian Salomon, Avneesh Sud, Gokul Varadhan, and Kelly Ward English support Elise London, Charlotte Powell, and Mary Wakeford
149
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 149 Acknowledgements Model contributors Boeing company Digital Michelangelo Project Lawrence Livermore National Laboratory Newport News Shipbuilding Power plant donor
150
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 150 Acknowledgements Funding agencies Army Research Office Defense Advance Research Projects Agency Ilju foundation Intel company Lawrence Livermore National Laboratory National Science Foundation Office of Naval Research
151
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 151 Acknowledgements My parents, brother, sister, and parents-in-law
152
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 152 Acknowledgements My wife, Dawoon Jung
153
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Questions?
154
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 154 Backup Slides - Collision
155
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 155 LOD-based Query Given two bounding volumes, BV i and BV j ConservBVTest (BV i, BV j,, ) Similar to LodCollide in a BV level
156
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 156 Conservative Collision Formulation Transforms the distance query with into an intersection query Considers the dilated BV, dilated (BV, ) Defined as the Minkowski sum of BV with a sphere of radius
157
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 157 Conservative Collision Formulation Defines Hausdorff distance between a bounding volume, BV, and the original mesh BV Contained original mesh Hausdorff distance
158
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 158 Lemma 1 If dilated (BV i, ) and dilated (BV j, ) do not intersect, the distance is greater than
159
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 159 Lemma 2 If there is an intersection between dilated (BV i, ) and dilated (BV j, ), the distance has an upper bound of
160
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 160 Lemma 2 If there is an intersection between dilated (BV i, ) and dilated (BV j, ), the distance has an upper bound of
161
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 161 Conservative Collision Formulation ConservBVTest (BV i, BV j,, ) = NoCollision, if Collision, if Potential collision, if
162
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 162 Cull and Refine Operations Culling operation BV pairs whose distance is greater than are culled Refining operation If there is collision and sum of Hausdorff distance is bigger than, further refinement is performed LodCollide (A, B,, ) =
163
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 163 Collision Detection between CHPMs Cluster Level Culling using Bounding Volume Test Tree PM Refinements GPU based Triangle Level Culling Exact Intersection Tests Two CHPMs Potentially colliding clusters Colliding triangles Potentially colliding triangles (PCTs) Reduced number of PCTs
164
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 164 BVTT using CHPM Recursively perform culling and refining operations Computes potentially colliding clusters performs coarse-grained LOD refinement over regions of the mesh in collision
165
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 165 BVTT using CHPM Recursively perform culling and refining operations Computes potentially colliding clusters performs coarse-grained LOD refinement over regions of the mesh in collision Culling operation Refining operation
166
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 166 Benchmark Models – Navigation Power plant model: 12M triangles Dragon model: 0.8M triangles
167
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 167 Contact-Dependent LODs [Otaduy and Lin 2003] Uses hierarchies of static LODs Has relatively small runtime overhead Can create popping or discontinuity Assumes a closed and manifold model because they use a hierarchy of convex hull
168
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 168 Limitations Relies on high temporal coherence Can be very conservative and return many false positives Two objects in parallel proximity with a separation with
169
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 169 Backup Slides – Cache- Oblivious Mesh Layouts
170
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 170 Terminology Edge span distribution where i is in [1, n] Edge span 1 Number of edges 234 1 1 1 1 4 2 3 4 1
171
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 171 Cache Miss Ratio Function (CMRF), Probability of a cache miss for a given edge span i 0 1 Cache miss ratio = Probability to have a cache miss Edge span 1 n-1 i
172
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 172 Number of Cache Misses at Runtime Estimated by multiplying two factors Runtime edge span distribution CMRF 1D Layout: Edge span 2Edge span 4Edge span 2 + + ( )
173
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 173 Number of Cache Misses at Runtime 1D Layout: Edge span 2Edge span 4Edge span 2 + + Runtime edge span distribution CMRF ( )
174
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 174 Expected Number of Cache Misses Approximate runtime edge span distribution with one of the layout Edge span distribution of the layout The number of vertices
175
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 175 Does a Local Permutation Decrease Cache Misses? ?
176
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 176 Does a Local Permutation Decrease Cache Misses?
177
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 177 Exact Cache-Oblivious Metric where All the possible cache configurations Monotonicity of CMRF
178
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 178 Geometric Formulation where Half hyperspace p 2 p 1 0 Closed hyperspace p 2 p 1 0
179
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 179 Geometric Volume Computation Assume each CMRF to be equally likely Half hyperspace (blue area) Space of CMRFs that reduce cache misses p 2 p 1 0 where
180
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 180 p 2 p 1 0 Fast and Approximate Volume Comparison Define a top polytope in closed hyperspace Compute the centroid, C, of the top polytope Top polytope Centroid, C
181
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 181 p 2 p 1 0 Fast and Approximate Volume Comparison Use the centroid for approximate volume comparison The volume containing the centroid is likely to be larger Centroid, C
182
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 182 Final Approximate Metric Centroid Pack non-zero to 1,…, m
183
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 183 Performance during View- Dependent Rendering Our layout [Hoppe 99] Optimized for various resolutions Optimized for full resolution
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.