~/talk

Bring Your Own Data Structures to Datalog

Talkat OOPSLA 2023 · 2023-10-23..10-27· [databases]
links:none on file
links:none on file
slides:none on file

Claims a compiler and runtime that let analyses plug Bring Your Own Data Structures into a Datalog engine via a Rust embedded DSL and procedural macros, with a trait-based runtime protocol for reads, writes and semi-naïve evaluation. Prototype compiles to efficient kernels and runs comparable to Soufflé while enabling special structures like Union-find transitive relations. Reproductions show Polonius runs ~2× faster and uses 1.5–2× less memory, transitive tests hit up to 10× time and 30× memory wins, PageRank scales ~40× at 64 threads, and an LLVM analysis enumerates 5.3B points in 7.3h (8 threads) and 2.7h (32 threads).

AI-written summary · about

  1. 0:00Datalog and applications
  2. 3:34Why Datalog is useful
  3. 5:40Data structure mismatches
  4. 6:44Bring Your Own Data Structures
  5. 8:08Integrating user-defined structures
  6. 9:30BODess performance with Ascent
  7. 10:14Polonius case study
  8. 10:56Transitive closure with Union-Find
  9. 11:59Parallelism in PageRank
  10. 12:23LLVM analysis with BODess
  11. 13:24Index sharing in pointer analysis
  12. 14:28Conclusion and future
  13. 15:19Q&A: Negation and limits
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.