ML-driven Hardware Cost Model for MLIR
Not on the map. Why?
Abstract (arXiv)
During early optimization passes, compilers must make predictions for machine-dependent characteristics such as execution unit utilization, number of register spills, latency, throughput etc. to generate better code. Often a hand-written static/analytical hardware cost model is built into the compiler. However, the need for more sophisticated and varied predictions has become more pronounced with the development of deep learning compilers which need to optimize dataflow graphs. Such compilers usually employ a much higher level MLIR form as an IR representation before lowering to traditional LLVM-IR. A static/analytical cost model in such a scenario is cumbersome and error prone as the opcodes represent very high level algebraic/arithmetic operations. Hence, we develop a machine learning-based cost model for high-level MLIR which can predict different target variables of interest such as CPU/GPU/xPU utilization, instructions executed, register usage etc. By considering the incoming MLIR as a text input a la NLP models we can apply well-known techniques from modern NLP research to help predict hardware characteristics more accurately. We expect such precise ML-driven hardware cost models to guide our deep learning compiler in graph level optimizations around operator fusion, local memory allocation, kernel scheduling etc. as well as in many kernel-level optimizations such as loop interchange, LICM and unroll. We report early work-in -progress results of developing such models on high-level MLIR representing dataflow graphs emitted by Pytorch/Tensorflow-like frameworks as well as lower-level dialects like affine. We show that these models can provide reasonably good estimates with low error bounds for various hardware characteristics of interest and can be a go-to mechanism for hardware cost modelling in the future.
Key facts. No citing papers in the map yet (data through 7 Oct 2026). Builds on 12 of its 18 references that are in the map. First posted on arXiv 14 Feb 2023.
Builds on
12 of 18 references.
References · 12
- 2014Sequence to Sequence Learning with Neural Networkscited by 2,974
- 2018code2vec: Learning Distributed Representations of Codecited by 249
- 2018Learning to Optimize Tensor Programscited by 138
- 2020Deep Learning for Source Code Modeling and Generation: Models, Applications and Challengescited by 55
- 2018Ithemal: Accurate, Portable and Fast Basic Block Throughput Estimation using Deep Neural Networkscited by 43
- 2021MLGO: a Machine Learning Guided Compiler Optimizations Frameworkcited by 40
- 2019NeuroVectorizer: End-to-End Vectorization with Deep Reinforcement Learningcited by 37
- 2021A Deep Learning Based Cost Model for Automatic Code Optimizationcited by 33
- 2022TLP: A Deep Learning-based Cost Model for Tensor Program Tuningcited by 14
- 2019AutoPhase: Compiler Phase-Ordering for High Level Synthesis with Deep Reinforcement Learningcited by 12
- 2022Learning to Combine Instructions in LLVM Compilercited by 4
- 2022Towards Optimal VPU Compiler Cost Modeling by using Neural Networks to Infer Hardware Performancescited by 2
Built on by
Not cited yet.