Mirage: A Multi-Level Superoptimizer for Tensor Programs
Mengdi Wu, Xinhao Cheng, Shengyu Liu, Chunan Shi, Jianan Ji, Kit Ao, Praveen Velliengiri, Xupeng Miao, Oded Padon, Zhihao Jia

TL;DR
Mirage is a novel multi-level superoptimizer for tensor programs that uses a unified representation called $uGraphs$ to discover advanced optimizations, significantly improving performance over existing methods.
Contribution
Mirage introduces $uGraphs$, a unified representation for tensor programs, enabling the discovery of novel optimizations across GPU hierarchy levels.
Findings
Outperforms existing approaches by up to 3.3x in tensor program optimization.
Uses a pruning technique based on abstraction to efficiently explore the search space.
Provides a probabilistic equivalence verification with strong theoretical guarantees.
Abstract
We introduce Mirage, the first multi-level superoptimizer for tensor programs. A key idea in Mirage is Graphs, a uniform representation of tensor programs at the kernel, thread block, and thread levels of the GPU compute hierarchy. Graphs enable Mirage to discover novel optimizations that combine algebraic transformations, schedule transformations, and generation of new custom kernels. To navigate the large search space, Mirage introduces a pruning technique based on abstraction that significantly reduces the search space and provides a certain optimality guarantee. To ensure that the optimized Graph is equivalent to the input program, Mirage introduces a probabilistic equivalence verification procedure with strong theoretical guarantees. Our evaluation shows that Mirage outperforms existing approaches by up to 3.3 even for DNNs that are widely used and heavily…
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
TopicsComputational Physics and Python Applications · Parallel Computing and Optimization Techniques · Tensor decomposition and applications
MethodsPruning
