Coarsening Optimization for Differentiable Programming
Xipeng Shen, Guoqiang Zhang, Irene Dea, Samantha Andow, Emilio, Arroyo-Fang, Neal Gafter, Johann George, Melissa Grueter, Erik Meijer, Steffi, Stumpos, Alanna Tempest, Christy Warden, Shannon Yang

TL;DR
This paper introduces coarsening optimization, a new method that combines symbolic and algorithmic differentiation to significantly speed up differentiable programming by reducing computation granularity and managing control flow complexities.
Contribution
It proposes a systematic coarsening approach for AD, introduces phi-calculus for handling control flow, and demonstrates substantial speedups in real-world applications.
Findings
Achieves up to two orders of magnitude speedup in AD
Effectively manages control flow in symbolic differentiation
Reduces runtime computations and data allocations
Abstract
This paper presents a novel optimization for differentiable programming named coarsening optimization. It offers a systematic way to synergize symbolic differentiation and algorithmic differentiation (AD). Through it, the granularity of the computations differentiated by each step in AD can become much larger than a single operation, and hence lead to much reduced runtime computations and data allocations in AD. To circumvent the difficulties that control flow creates to symbolic differentiation in coarsening, this work introduces phi-calculus, a novel method to allow symbolic reasoning and differentiation of computations that involve branches and loops. It further avoids "expression swell" in symbolic differentiation and balance reuse and coarsening through the design of reuse-centric segment of interest identification. Experiments on a collection of real-world applications show that…
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.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Evolutionary Algorithms and Applications · Distributed and Parallel Computing Systems
