Data Compiler
Optimizing Large-Scale Deep Learning by Data Movement-Aware Compiler
Optimizing Large-Scale Deep Learning by Data Movement-Aware Compiler
Projet Members
Project Summary
This project aims to address the data movement, as a known major efficiency bottleneck of distributed training[1], by designing a tensor compiler[2] which can acquire and optimize the data movement graph and scheduling at the compilation time so that the execution becomes fully static for higher performance. Such Ahead-of-Time(AOT) optimization also enables opportunities for auto-parallelism and pipelining like [3, 5]. The current exploration is about leveraging Multi-Level Intermediate Representation (MLIR)[4] to include data movement information into the compilation passes.
Deliverables
- Proposal: WIP
- GitHub repo: not ready for open access
- Report: TBD
- Paper: TBD
Timeline
- 15 April 2023: Define a MLIR dialect which can describe data movement of deep learning
- 1 June 2023: Figure out the optimization over the dialect converting and lowering passes
- 15 July 2023: Prototype the backend code generation for real-world tests
Reference
- Ivanov, Andrei, et al. “Data movement is all you need: A case study on optimizing transformers.” Proceedings of Machine Learning and Systems 3 (2021): 711-732. available at https://arxiv.org/abs/2007.00072
- Kjolstad, Fredrik, et al. “The tensor algebra compiler.” Proceedings of the ACM on Programming Languages 1.OOPSLA (2017): 1-29. available at https://dl.acm.org/doi/10.1145/3133901
- Yuan, Jinhui, et al. “Oneflow: Redesign the distributed deep learning framework from scratch.” arXiv preprint. https://arxiv.org/abs/2110.15032
- Vasilache, Nicolas, et al. “Composable and modular code generation in MLIR: A structured and retargetable approach to tensor compiler construction.” arXiv preprint. https://arxiv.org/abs/2202.03293
- Zheng, Lianmin, et al. “Alpa: Automating Inter-and {Intra-Operator} Parallelism for Distributed Deep Learning.” 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI 22). available at https://arxiv.org/abs/2201.12023
Last modified March 23, 2023: add projects (e3d57b6)