Scaling implicit parallelism via dynamic control replication
Michael Bauer, Wonchan Lee, Elliott Slaughter, Zhihao Jia, Mario Di Renzo, Manolis Papadakis, Galen M. Shipman, Patrick S. McCormick, Michael Garland, Alex Aiken
Abstract
We present dynamic control replication, a run-time program analysis that enables scalable execution of implicitly parallel programs on large machines through a distributed and efficient dynamic dependence analysis. Dynamic control replication distributes dependence analysis by executing multiple copies of an implicitly parallel program while ensuring that they still collectively behave as a single execution. By distributing and parallelizing the dependence analysis, dynamic control replication supports efficient, on-the-fly computation of dependences for programs with arbitrary control flow at scale. We describe an asymptotically scalable algorithm for implementing dynamic control replication that maintains the sequential semantics of implicitly parallel programs.
An implementation of dynamic control replication in the Legion runtime delivers the same programmer productivity as writing in other implicitly parallel programming models, such as Dask or TensorFlow, while providing better performance (11.4X and 14.9X respectively in our experiments), and scalability to hundreds of nodes. We also show that dynamic control replication provides good absolute performance and scaling for HPC applications, competitive in many cases with explicitly parallel programming systems. CCS Concepts • Software and its engineering → Runtime environments; • Computing methodologies → Parallel and distributed programming languages;
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers4
- Visibility Algorithms for Dynamic Dependence Analysis and Distributed CoherenceMichael Bauer, Elliott Slaughter, Sean Treichler, Wonchan Lee et al.PPoPP 2023 · 6 citations
- Index launches: scalable, flexible representation of parallel task groupsRupanshu Soi, Michael Bauer, Sean Treichler, Manolis Papadakis et al.SC 2021 · 5 citations
- Trojan Horse: Aggregate-and-Batch for Scaling Up Sparse Direct Solvers on GPU ClustersYida Li, Siwei Zhang, Yiduo Niu, Yang Du et al.PPoPP 2026 · 1 citation
- Automatic Tracing in Task-Based Runtime SystemsRohan Yadav, Michael Bauer, David Broman, Michael Garland et al.ASPLOS 2025
Builds on1
Related papers
- On-the-Fly Static Analysis via Dynamic Bidirected Dyck ReachabilityShankaranarayanan Krishna, Aniket Lal, Andreas Pavlogiannis, Omkar TuppePOPL 2024 · 7 citations
- A programming model for semi-implicit parallelization of static analysesDominik Helm, Florian Kübler, Jan Thomas Kölzer, Philipp Haller et al.ISSTA 2020 · 8 citations
- Automatic Parallelism ManagementSam Westrick, Matthew Fluet, Mike Rainey, Umut A. AcarPOPL 2024 · 7 citations
- BigDataflow: A Distributed Interprocedural Dataflow Analysis FrameworkZewen Sun, Duanchen Xu, Yiyu Zhang, Yun Qi et al.FSE 2023 · 10 citations
- Dynaplex: analyzing program complexity using dynamically inferred recurrence relationsDidier Ishimwe, KimHao Nguyen, ThanhVu NguyenOOPSLA 2021 · 16 citations
