![Page 1: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/1.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Cache-Oblivious Mesh Layouts
Sung-Eui Yoon, Peter LindstromValerio Pascucci, Dinesh Manocha1: University of North Carolina - Chapel Hill2: Lawrence Livermore National Laboratory
1
1
2
2
http://gamma.cs.unc.edu/COL
![Page 2: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/2.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Goal
• Compute cache-coherent layouts of polygonal meshes ♦ For geometric processing and
visualization♦ Handle any kinds of polygonal
models (e.g., irregular geometry)
![Page 3: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/3.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Motivation
• High growth rate of computational power of CPUs and GPUs
Growth rateduring 1993 – 2004
Courtesy: http://www.hcibook.com/e3/online/moores-law/
![Page 4: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/4.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Memory Hierarchies and Caches
CPU or GPU
Fast memory or cache
Slow memory
Blocktransfer
Disk
106nsAccess time: 102ns100ns
![Page 5: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/5.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
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
![Page 6: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/6.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
82 million trianglesIrregular distribution of geometry
CAD Model – Double Eagle Tanker Model
![Page 7: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/7.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Isosurface and Scanned Models
Isosurface100M triangles
St. Matthew372M triangles
![Page 8: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/8.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Main Contribution
• Algorithm to compute cache-oblivious layouts of polygonal meshes
Cache-oblivious metric
Multilevel optimization framework
Applicable to hierarchical representations
![Page 9: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/9.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Live Demo – View-Dependent Rendering (VDR)
GeForce Go 6800 Ultra
• Based on multiresolution hierarchy♦ Dynamically computes simplification♦ Cache-oblivious layout is used to
minimize GPU vertex cache misses
![Page 10: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/10.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Related Work
• Cache-coherent algorithms• Mesh layouts
![Page 11: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/11.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
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
![Page 12: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/12.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
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 access patternglobally follows the layout order!
![Page 13: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/13.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
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!
![Page 14: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/14.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Outline
• Overview• Cache-oblivious metric• Results
![Page 15: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/15.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Outline
• Overview• Cache-oblivious metric• Results
![Page 16: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/16.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Overview
Multilevel optimizationCache-oblivious metric
Local permutations
va
vb vd
vc
Input graph
va vb vd vc
Result 1D layout
![Page 17: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/17.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
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
va
vb vd
vc
![Page 18: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/18.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
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
: |}|, ... ,1{ VVva
vb vd
vc
va vb vd vc
1 2 3 4
![Page 19: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/19.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Local Permutation
Vertex layout
![Page 20: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/20.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Terminology
• Edge span of (va, vb)|)()(| ba vv
Layout mapping
1)( av
5)( cv
4|)()(| ca vv
![Page 21: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/21.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Terminology
• ♦ Set of edges having edge span i in
the layout
iE
4),( Evv ca 4
![Page 22: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/22.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Terminology
• Edge span distribution ♦ where i is in [1, n]|| iE
1|| 3 E1|| 2 E
1|| 4 E
4|| 1 E
Edge span1
Number of edges
2 3 4
1
1
1
1
4
2
3
4
1
![Page 23: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/23.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Cache Miss Ratio Function (CMRF),
• Probability of a cache miss for a given edge span i
ip
0
1Cache miss ratio =Probability to have
a cache miss
Edge span
ip
1 n-1i
![Page 24: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/24.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Number of Cache Misses at Runtime
• Estimated by multiplying two factors♦ Runtime edge span distribution♦ CMRF
1D Layout:
Edge span 2 Edge span 4 Edge span 2
2p 2p4p+ + ( 2 1, () 2p 4p, )( )
![Page 25: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/25.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Number of Cache Misses at Runtime
1D Layout:
Edge span 2 Edge span 4 Edge span 2
2p 2p4p+ + ( 2 1, () 2p 4p, )
Runtime edge span distribution CMRF
( )
![Page 26: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/26.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Expected Number of Cache Misses
♦ Approximate runtime edge span distribution with one of the layout
1
1
||n
iii pE
Edge span distribution of the layout
The number of vertices
![Page 27: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/27.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Outline
• Overview• Cache-oblivious metric• Results
![Page 28: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/28.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Cache-Oblivious Metric
• Decides if a local permutation reduces number of cache misses♦ Probabilistic formulation♦ Reduces to geometric volume
computation
![Page 29: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/29.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Does a Local Permutation Decrease Cache Misses?
1
1
||n
iii pE
1
1
|)||(|n
iiii pEE
|||| ii EE || iE
?
![Page 30: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/30.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Does a Local Permutation Decrease Cache Misses?
1
1
||n
iii pE
1
1
|)||(|n
iiii pEE
0||1
1
n
iii pE
![Page 31: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/31.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Monotonocity of CMRF,ip
• Assume CMRF is a monotonically increasing function of edge span
0
1Cache miss
ratio
Edge span
ip
1 ∞i
![Page 32: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/32.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Exact Cache-Oblivious Metric
0||1
1
n
iii pE
where
All the possible cache configurations
1...0 1221 nn pppp
Monotonicity of CMRF
![Page 33: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/33.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Geometric Formulation
where
0||1
1
n
iii pE
1...0 1221 nn pppp
Half hyperspacep2
p10
Closed hyperspace1 n
p2
p10
![Page 34: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/34.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Geometric Volume Computation
• Assume each CMRF to be equally likely
• Half hyperspace (blue area)♦ Space of CMRFs that reduce cache misses
p2
p10where
0||1
1
n
iii pE
1...0 1221 nn pppp
![Page 35: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/35.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Geometric Volume Computation
Time complexity♦ Exact: [Lasserre and Zeron
01]♦ Approximate: [Kannan et al. 97]
)( 1nnO)( 5nO
![Page 36: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/36.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
p2
p10
Fast and Approximate Volume Comparison
• Define a top polytope in closed hyperspace
• Compute the centroid, C, of the top polytope
Top polytope Centroid, C
![Page 37: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/37.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
p2
p10
Fast and Approximate Volume Comparison
• Use the centroid for approximate volume comparison♦ The volume containing the centroid is
likely to be larger
Centroid, C
![Page 38: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/38.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Bound of Approximation
• 0.1% ~ 0.3% compared to the exact metric
![Page 39: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/39.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Final Approximate Metric
0||1
)(
m
jjl jE
Centroid
Pack non-zero to 1,…, m || iE
![Page 40: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/40.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Layout Optimization
• Find an optimal layout that minimizes our metric♦ Combinatorial optimization problem
![Page 41: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/41.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Multilevel Minimization
Step 1: Coarsening
![Page 42: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/42.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Multilevel Minimization
Step 2: Ordering of coarsest graph
![Page 43: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/43.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Multilevel Minimization
Step 3: Refinement and
local optimization
![Page 44: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/44.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Outline
• Overview• Cache-oblivious layouts• Results
![Page 45: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/45.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Layout Computation Time
• Process 70 million vertices 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
![Page 46: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/46.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Edge Span Distributions of Different Layouts
Cache-oblivious layout
Spectral layout
Original layout
Edge span
Nu
mb
er o
f ed
ges
>
![Page 47: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/47.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Applications
• View-dependent rendering• Collision detection• Isocontour extraction
![Page 48: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/48.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
View-Dependent Rendering
• Layout vertices and triangles of CHPM [Yoon et al. 04]♦ Reduce misses of GPU vertex cache
![Page 49: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/49.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
View-Dependent Rendering
Models # of Tri.Our
layout
Simplification layout
[Yoon et al. 04]
St. Matthew
372M 106 M/s 23 M/s
Isosurface 100M 90 M/s 20 M/s
Double Eagle
Tanker82M 47 M/s 22 M/s
4.5X
2.1X
Peak performance: 145 M tri / s on GeForce 6800 Ultra
![Page 50: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/50.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Realtime Captured Video – St. Matthew Model
![Page 51: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/51.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Comparison with Other Rendering Sequences
Our layout
Universal rendering sequences[Bogomjakov and Gotsman 2002]
![Page 52: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/52.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Comparison with Other Rendering Sequences
Our layout
[Hoppe 99]
Optimized for 16 vertex cache sizewith FIFO replacement
Optimized for no particular cache size
![Page 53: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/53.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Performance during View-Dependent Rendering
Our layout
[Hoppe 99]
Optimized for various resolutions
Optimized for full resolution
![Page 54: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/54.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Comparison with Space Filling Curve on Power Plant Model
Our layout
Space filling curve (Z-curve)
![Page 55: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/55.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
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]
![Page 56: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/56.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Rigid Body Simulation
![Page 57: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/57.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Collision Detection Time
2X on average
Depth-first layout
Cache-oblivious layout
![Page 58: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/58.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
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
Isocontourz(x,y) = 500m
![Page 59: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/59.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Comparison – FirstExtraction of Z(x,y) = 500m
Relative Performance
overZ-axis sorted
layout
Nearly optimized for particular isocontour
2
21
13
1
Disk access time is bottleneck
![Page 60: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/60.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Comparison – Second Extraction of Z(x,y) = 500m
Relative Performance
overZ-axis sorted
layout
2
21
13
379
212
10.8
Memory and L1/L2 cache access times are bottleneck
![Page 61: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/61.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Limitations
• Assumptions on CMRF♦ May not work well for all applications
• Does not compute global optimum♦ Greedy solution
![Page 62: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/62.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Advantages
• General ♦ Applicable to all kinds of polygonal
models♦ Works well for various applications
• Cache-oblivious♦ Can have benefit from CPU/GPU
cache to memory and disk
• No modification of runtime application♦ Only layout computation
![Page 63: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/63.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
OpenCCL: Cache-Coherent Layouts of Graphs and Meshes• Source codes for computing a
cache-coherent layout • Easy to use
CLayoutGraph Graph (NumVertex);
0
1 2
Graph.AddEdge (0, 1);Graph.AddEdge (0, 2);Graph.AddEdge (1, 2);
int Order [NumVertex];Graph.ComputeOrdering (Order);
Google “Cache Oblivious Mesh Layout” or
Http://gamma.cs.unc.edu/COL
![Page 64: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/64.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Conclusion
• Novel algorithm for computing cache-oblivious mesh layouts♦ Cast the problem as an optimization♦ Probabilistically compute the
expected number of caches misses♦ Achieve significant improvements (2
to 20X) without modifying runtime applications
![Page 65: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/65.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Ongoing and Future Work
• Apply to other applications ♦ Simplification and approximate
collision detection [Yoon et al. 04]♦ Shortest path computation, etc.
• Investigate optimality
![Page 66: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/66.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Ongoing and Future Work
• Cache-Oblivious Layouts of Bounding Volume Hierarchies [Yoon and Manocha 05] ♦ Tech. Report, University of North
Carolina at Chapel Hill
![Page 67: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/67.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Acknowledgements
• Anonymous donor ♦ Power plant model
• Digital Michelangelo Project♦ St. Matthew model at Stanford
University
• LLNL ASCI VIEWS♦ Isosurface model
• Newport news shipbuilding♦ Double eagle tanker
![Page 68: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/68.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Acknowledgements
• Army Research Office• DARPA• Intel Corporation• Lawrence Livermore Nat’l Lab.• National Science Foundation• Office of Naval Research• RDECOM
![Page 69: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/69.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
• Martin Isenburg• Dawoon Jung• Brandon Lloyd• Elise London• Brian Salomon• Avneesh Sud
Acknowledgements
![Page 70: The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Cache-Oblivious Mesh Layouts Sung-Eui Yoon, Peter Lindstrom Valerio Pascucci, Dinesh Manocha 1: University](https://reader038.vdocuments.us/reader038/viewer/2022110322/56649d405503460f94a1a267/html5/thumbnails/70.jpg)
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL
Questions?
Project URLhttp://gamma.cs.unc.edu/COL