OPASS: Orchestrating TVM's Passes for Lowering Memory Footprints of Computation Graphs
Deep learning (DL) compilers, such as TVM and TensorFlow, encompass a variety of passes for optimizing computation graphs (i.e., DL models). Despite the efforts on developing optimization passes, it remains a challenge in arranging these passes - most compilers employ fixed pass sequences that do not fit with computation graphs of diverse structures; on the other hand, optimization passes have cascade effects, making the structures of graphs under compilation volatile and as well making it difficult to generate optimal sequences for graphs. Inspired by recent progresses on static computing memory footprints (i.e., memory usages) of computation graphs, we introduce in this paper OPASS, a novel approach to orchestrating TVM's optimization passes for lowering memory footprints of computation graphs, and finally allowing the graphs to run on memory-constrained devices. The key idea is, given a computation graph <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$G$</tex>, to optimize the graph heuristically and iteratively: OPASS learns the effects of passes on the graph; it then optimizes <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$G$</tex> iteratively - each iteration picks up a pass by the reduction of the memory footprint of <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$G$</tex> and as well the implicit effects of the pass for further optimizations, letting the pass be applied. We evaluate OPASS on Rebench (a suite of computation graphs) and two real-world models (Transformer and ResNet). The results clearly show the strength of OPASS: it outperforms TVM's default sequence by <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$1.77\times$</tex> in reducing graphs' memory footprints, with affordable costs; it also offers extra memory reductions of <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$5\sim 12\%$</tex> by catching the implicit effects of passes. Furthermore, OPASS helps analyze positive/negative effects of passes to graphs' memory footprints, providing TVM developers with best practices for designing optimization pass sequences.
Authors
- He Jiang (ORCID: https://orcid.org/0000-0001-8674-4948)
- Ziyi Lin (ORCID: https://orcid.org/0000-0001-9615-4968)
- Chengcheng Wan (ORCID: https://orcid.org/0000-0001-9162-9688)
- Pengbo Nie (ORCID: https://orcid.org/0000-0002-3759-5242)
- Jianjun Zhao (ORCID: https://orcid.org/0000-0001-9619-5735)
- Zihan Wang (ORCID: https://orcid.org/0000-0001-7118-0131)
- Yuting Chen (ORCID: https://orcid.org/0000-0001-6080-8317)
Institutions
- Kyushu University (JP)
- Shanghai Jiao Tong University (CN)
- Dalian University of Technology (CN)
- Alibaba Group (China) (CN)
- East China Normal University (CN)
Publication Details
- Published
- 2024-10-06
- DOI
- https://doi.org/10.1109/icsme58944.2024.00026
- Citations
- 2
- Primary Topic
- Graph Theory and Algorithms
- Type
- article
- Field-Weighted Citation Impact
- 0.50