Glow: Graph Lowering Compiler Techniques for Neural Networks
Nadav Rotem, Jordan Fix, Saleem Abdulrasool, Garret Catron, Summer, Deng, Roman Dzhabarov, Nick Gibson, James Hegeman, Meghan Lele, Roman, Levenstein, Jack Montgomery, Bert Maher, Satish Nadathur, Jakob Olesen,, Jongsoo Park, Artem Rakhov, Misha Smelyanskiy, Man Wang

TL;DR
Glow is a compiler framework that optimizes neural network execution across diverse hardware by transforming dataflow graphs into multiple intermediate representations for targeted optimizations.
Contribution
It introduces a novel lowering phase that simplifies support for various operators and hardware targets, enhancing flexibility and efficiency in neural network compilation.
Findings
Supports multiple hardware targets efficiently
Enables high-level domain-specific optimizations
Reduces need for operator-specific implementations
Abstract
This paper presents the design of Glow, a machine learning compiler for heterogeneous hardware. It is a pragmatic approach to compilation that enables the generation of highly optimized code for multiple targets. Glow lowers the traditional neural network dataflow graph into a two-phase strongly-typed intermediate representation. The high-level intermediate representation allows the optimizer to perform domain-specific optimizations. The lower-level instruction-based address-only intermediate representation allows the compiler to perform memory-related optimizations, such as instruction scheduling, static memory allocation and copy elimination. At the lowest level, the optimizer performs machine-specific code generation to take advantage of specialized hardware features. Glow features a lowering phase which enables the compiler to support a high number of input operators as well as a…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Advanced Neural Network Applications · Ferroelectric and Negative Capacitance Devices
