Presentation is loading. Please wait.

Presentation is loading. Please wait.

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Interactive Visualization and Collision Detection using Dynamic Simplification and Cache-Coherent Layouts.

Similar presentations


Presentation on theme: "The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Interactive Visualization and Collision Detection using Dynamic Simplification and Cache-Coherent Layouts."— Presentation transcript:

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 MB1% Isosurface (100M) MB2% St. Matthew MB2% 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 Courtesy: Anselmo Lastra and during

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 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 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 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

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 ( )

173 The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL 173 Number of Cache Misses at Runtime 1D Layout: Edge span 2Edge span 4Edge span 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


Download ppt "The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Interactive Visualization and Collision Detection using Dynamic Simplification and Cache-Coherent Layouts."

Similar presentations


Ads by Google