DLVM: A modern compiler infrastructure for deep learning systems
Richard Wei, Lane Schwartz, Vikram Adve

TL;DR
DLVM is a modern, modular compiler infrastructure designed for deep learning systems, offering high expressivity, safety, and performance through a linear algebra IR, algorithmic differentiation, and GPU code generation.
Contribution
It introduces DLVM, a flexible and modular compiler infrastructure inspired by LLVM, supporting tensor DSLs and enabling safer, more performant deep learning frameworks.
Findings
DLVM achieves high performance on GPU targets.
Supports expressive tensor domain-specific languages.
Enables safer and more modular deep learning software development.
Abstract
Deep learning software demands reliability and performance. However, many of the existing deep learning frameworks are software libraries that act as an unsafe DSL in Python and a computation graph interpreter. We present DLVM, a design and implementation of a compiler infrastructure with a linear algebra intermediate representation, algorithmic differentiation by adjoint code generation, domain-specific optimizations and a code generator targeting GPU via LLVM. Designed as a modern compiler infrastructure inspired by LLVM, DLVM is more modular and more generic than existing deep learning compiler frameworks, and supports tensor DSLs with high expressivity. With our prototypical staged DSL embedded in Swift, we argue that the DLVM system enables a form of modular, safe and performant frameworks for deep learning.
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 · Software Testing and Debugging Techniques · Advanced Neural Network Applications
