Efficient Parallel Self-Adjusting Computation
Daniel Anderson, Guy E. Blelloch, Anubhav Baweja, Umut A. Acar

TL;DR
This paper introduces a system for parallel self-adjusting computation that efficiently updates results for nested parallel algorithms, providing theoretical bounds and demonstrating significant performance improvements over re-computation.
Contribution
It presents the first parallel self-adjusting computation system applicable to a wide class of nested algorithms with proven theoretical bounds.
Findings
Significant speedups in dynamic algorithms over large datasets
Theoretical bounds relating input differences to update costs
Effective application to dynamic sequences and trees
Abstract
Self-adjusting computation is an approach for automatically producing dynamic algorithms from static ones. The approach works by tracking control and data dependencies, and propagating changes through the dependencies when making an update. Extensively studied in the sequential setting, some results on parallel self-adjusting computation exist, but are either only applicable to limited classes of computations, such as map-reduce, or are ad-hoc systems with no theoretical analysis of their performance. In this paper, we present the first system for parallel self-adjusting computation that applies to a wide class of nested parallel algorithms and provides theoretical bounds on the work and span of the resulting dynamic algorithms. As with bounds in the sequential setting, our bounds relate a "distance" measure between computations on different inputs to the cost of propagating an…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
