Decoupling Data Layouts from Bounding Volume Hierarchies
summary
Scion DSL and compiler separate BVH logical ADTs from physical memory layouts and automatically specialize traversal with destructor and constructor specialization, emitting code for x86, NVIDIA, and ARM. The evaluation explores 19 layouts across 7 scenes, 2 ray distributions, and 3 machines; a novel PBRTQ16 layout is Pareto-optimal in 35 of 42 contexts, about 5× faster than the most space‑efficient layout and using ~2× less memory than the fastest prior layout. Artifacts available.
AI-written summary · about
chapters (17)
- 0:00Introduction
- 1:04Bounding volume hierarchies
- 2:29Physical layouts of BVH nodes
- 3:31Inter-node optimizations
- 4:55Trade-offs in BVH layout
- 6:40Decoupling logical and physical
- 7:43System overview and code generation
- 8:45Specifying logical interface
- 9:27Layout language constructs
- 10:09Splits and derived fields
- 11:32Advanced layout optimizations
- 12:35Destructor specialization
- 13:37Constructor specialization
- 14:18Performance vs libraries
- 15:24Design space exploration
- 16:27Key takeaways and future
- 16:51Q&A
related talks
01h 05mTiles, Bricks, and Layouts: How Aggregate Data Abstractions Aid in Optimizing Data(…)
17mSpineless Traversal for Layout Invalidation
51mData Orientation For The Win!
56m“High Performance Code 201: Hybrid Data Structures"
30mMulti-variable Quantification of BDDs in External Memory using Nested Sweeping
27mUnboxing Virgil ADTs For Fun and Profit
22mTileLoom: Automatic Dataflow Planning for Tile-Based Languages on Spatial Dataflow Accel…
01h 03mScaling up machine learning without tears (and what do programming languages ha...
