Parallelism in a Region Inference Context
summary
Implements a fork‑join parallel construct for a region‑inference compiler, embeds an effect-based region-protection inference that flags regions needing synchronization, and proves soundness for the nondeterministic region‑explicit target. Runtime uses stack-of-regions with per-region allocation pointers and optional mutex-protected regions plus CAS fast paths; destination‑passing avoids copies for promoted values. Prototype in MLKit compiles higher‑order code, shows multicore speedups on parallel benchmarks and delivers performance comparable to existing ML parallel runtimes.
AI-written summary · about
chapters (13)
- 0:00Parallelism in region inference
- 1:07Problem definition
- 2:56Contributions and proof
- 4:20Programmer interface
- 5:23Memory model and allocation
- 6:52Typing rules and translation
- 7:34Region inference example
- 9:00Function regions and effects
- 10:06Thread joining and deallocation
- 11:10Concurrent allocation
- 12:33Protection inference
- 13:57Evaluation results
- 14:43Q&A
related talks
19mFrom Capabilities to Regions: Enabling Efficient Compilation of Lexical Effect ...
34mModular Storage Mode Analysis
27mRegions as Continuation Marks
27mDistributing and Parallelizing Non-canonical Loops
20mVectorizing Sparse Coiteration for Two-finger Loop Structure (Extended Abstract)
01h 01mIntroduction to Vector Parallelism
37mContractions Are Abstractions - Towards Effective Memory Management in ReML
36mParallel Algebraic Effect Handlers
