Thinking DSLs for Massive Visualization
summary
Superconductor is a browser DSL that compiles high‑level layout and data code into parallel JavaScript targeting web workers WebCL and WebGL and uses Rosette/Z3 for synthesis; a schedule sketching primitive lets the compiler fill or check tree‑traversal schedules so parallelism survives spec changes. The system renders real‑time interactive visualizations of on the order of 100,000 data points (demo shows 100k polling stations) by flattening trees into arrays and running level‑synchronous GPU traversals. The approach works end‑to‑end and catches schedule regressions automatically. Superconductor Rosette/Z3
AI-written summary · about
chapters (19)
- 0:00Intro
- 1:34Life Without Synthesis
- 6:09A Really Stupid Synthesizer
- 6:53An SMT Synthesizer in 2 Nights with Rosette
- 8:55Mission Accomplished?
- 9:32Put Synthesis in Code Layer
- 10:23Data Wrangling with Synthesis
- 13:28Synthesis is Coming
- 21:35SUPERCONDUCTOR Architecture: Parallel Browser-in-a-Browser
- 23:56Layout DSL: Fast Tree Language
- 26:13Layout DSL is Flexible! GPU
- 27:46Parallel Algorithms are Patterns
- 27:59Schedule Layout as Parallel Tree Traversals
- 29:54Schedule in Action
- 30:48One Layout Traversal on GPU "Level-synchronous Breadth-First"
- 32:57Need "Structured Programming" for Automatically Parallel Languages
- 33:43Input: Partial Schedule ("Sketch")
- 35:43Synthesis for Data Science.. What Else?
- 37:40Synthesis Languages
related talks
37mVisualizing Large Datasets with JavaScript Using deck.gl
40mVisualizing Large Datasets with JavaScript Using Deck.gl
21mDemo: A functional EDSL for mathematics visualization that compiles to JavaScrip...
27mScalable Data Visualization
01h 07mVisualizing Connections
31mBuilding a User Maintainable Visualization Dashboard for...
34mHigh-performance graphical view filtering with Sprotty
15mThe Future of Data Visualization on the Web
