Efficient and Fast High-Performance Library Generation for Deep Learning Accelerators
The widespread adoption of deep learning accelerators (DLAs) underscores their pivotal role in improving the performance and energy efficiency of neural networks. To fully leverage the capabilities of these accelerators, exploration-based library generation approaches have been widely used to substantially reduce software development overhead. However, these approaches have been challenged by issues related to sub-optimal optimization results and excessive optimization overheads. In this paper, we propose <small>Heron</small> to generate high-performance libraries of DLAs in an efficient and fast way. The key is automatically enforcing massive constraints through the entire program generation process and guiding the exploration with an accurate pre-trained cost model. <small>Heron</small> represents the search space as a constrained satisfaction problem (CSP) and explores the space via evolving the CSPs. Thus, the sophisticated constraints of the search space are strictly preserved during the entire exploration process. The exploration algorithm has the flexibility to engage in space exploration using either online-trained models or pre-trained models. Experimental results demonstrate that <small>Heron</small> averagely achieves 2.71<inline-formula><tex-math notation="LaTeX">$\times$</tex-math></inline-formula> speedup over three state-of-the-art automatic generation approaches. Also, compared to vendor-provided hand-tuned libraries, <small>Heron</small> achieves a 2.00<inline-formula><tex-math notation="LaTeX">$\times$</tex-math></inline-formula> speedup on average. When employing a pre-trained model, <small>Heron</small> achieves 11.6<inline-formula><tex-math notation="LaTeX">$\times$</tex-math></inline-formula> compilation time speedup, incurring a minor impact on execution time.
Authors
- Enshuai Zhou (ORCID: https://orcid.org/0000-0001-6434-8602)
- Yuanbo Wen (ORCID: https://orcid.org/0000-0002-7775-2724)
- Huaping Chen (ORCID: https://orcid.org/0000-0002-2058-7086)
- Zidong Du (ORCID: https://orcid.org/0000-0002-7603-4210)
- Xiaqing Li (ORCID: https://orcid.org/0000-0002-7748-7967)
- Ling Li (ORCID: https://orcid.org/0000-0001-8877-9052)
- Xing Hu (ORCID: https://orcid.org/0000-0002-9979-0561)
- Qi Guo (ORCID: https://orcid.org/0000-0003-2530-5874)
- Yongwei Zhao (ORCID: https://orcid.org/0000-0002-5503-4457)
- Jun Bi (ORCID: https://orcid.org/0000-0001-9956-7039)
- Tianshi Chen (ORCID: https://orcid.org/0000-0002-7601-0753)
- Yuxuan Guo (ORCID: https://orcid.org/0000-0003-1462-8336)
Institutions
- University of Science and Technology of China (CN)
- Chinese Academy of Sciences (CN)
- Institute of Computing Technology (CN)
- Institute of Software (CN)
- Cambricon (China)
Publication Details
- Journal
- IEEE Transactions on Computers
- Published
- 2024-10-08
- DOI
- https://doi.org/10.1109/tc.2024.3475575
- Citations
- 1
- Primary Topic
- Parallel Computing and Optimization Techniques
- Type
- article
- Field-Weighted Citation Impact
- 0.49
Funders
- National Natural Science Foundation of China
- Youth Innovation Promotion Association of the Chinese Academy of Sciences
- National Key Research and Development Program of China