1. Scaling implicit parallelism via dynamic control replication
- Author
-
Zhihao Jia, Elliott Slaughter, Galen M. Shipman, Mario Di Renzo, Patrick McCormick, Michael Bauer, Alex Aiken, Michael Garland, Manolis Papadakis, Wonchan Lee, Bauer, M., Lee, W., Slaughter, E., Jia, Z., Di Renzo, M., Papadakis, M., Shipman, G., Mccormick, P., Garland, M., and Aiken, A.
- Subjects
legion ,020203 distributed computing ,Legion ,Computer science ,Semantics (computer science) ,scalable dependence analysi ,task-based runtime ,dynamic control replication ,020207 software engineering ,02 engineering and technology ,Parallel computing ,Dependence analysis ,scalable dependence analysis ,Replication (computing) ,implicit parallelism ,implicit parallelism, scalable dependence analysis, dynamic control replication, Legion, task-based runtime ,Program analysis ,Control flow ,Scalability ,0202 electrical engineering, electronic engineering, information engineering ,Implicit parallelism ,Programmer - 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.
- Published
- 2021
- Full Text
- View/download PDF