QiMeng-GEMM: Automatically Generating High-Performance Matrix Multiplication Code by Exploiting Large Language Models
As a crucial operator in numerous scientific and engineering computing applications, the automatic optimization of General Matrix Multiplication (GEMM) with full utilization of ever-evolving hardware architectures (e.g. GPUs and RISC-V) is of paramount importance. While Large Language Models (LLMs) can generate functionally correct code for simple tasks, they have yet to produce high-performance code. The key challenge resides in deeply understanding diverse hardware architectures and crafting prompts that effectively unleash the potential of LLMs to generate high-performance code. In this paper, we propose a novel prompt mechanism called QiMeng-GEMM which enables LLMs to comprehend the architectural characteristics of different hardware platforms and automatically search for the optimization combinations for GEMM. The key of QiMeng-GEMM is a set of informative, adaptive, and iterative meta-prompts. Based on this, a searching strategy for optimal combinations of meta-prompts is used to iteratively generate high-performance code. Extensive experiments conducted on 4 leading LLMs, various paradigmatic hardware platforms, and representative matrix dimensions unequivocally demonstrate QiMeng-GEMM’s superior performance in auto-generating optimized GEMM code. Compared to vanilla prompts, our method achieves a performance enhancement of up to 113×. Even when compared to human experts, our method can reach 115% of cuBLAS on NVIDIA GPUs and 211% of OpenBLAS on RISC-V CPUs. Notably, while human experts often take months to optimize GEMM, our approach reduces the development cost by over 240×.
Authors
- Yuanbo Wen (ORCID: https://orcid.org/0000-0002-7775-2724)
- Qian Zhou (ORCID: https://orcid.org/0000-0002-0712-1062)
- Qipeng Guo (ORCID: https://orcid.org/0000-0001-7113-651X)
- Yunji Chen (ORCID: https://orcid.org/0000-0003-3925-5185)
- Ke Gao
- Yuwei Chen (ORCID: https://orcid.org/0000-0003-0148-3609)
- Yanjun Wu (ORCID: https://orcid.org/0000-0002-1823-0459)
- Ling Li (ORCID: https://orcid.org/0009-0009-6804-8143)
- Weiqiang Xiong
Institutions
- Chinese Academy of Sciences (CN)
- Institute of Computing Technology (CN)
- Institute of Software (CN)
Publication Details
- Journal
- Proceedings of the AAAI Conference on Artificial Intelligence
- Published
- 2025-04-11
- DOI
- https://doi.org/10.1609/aaai.v39i21.34461
- Citations
- 2
- Primary Topic
- Parallel Computing and Optimization Techniques
- Type
- article
- Field-Weighted Citation Impact
- 2.48
Funders
- National Science Foundation
- National Natural Science Foundation of China
- Chinese Academy of Sciences
- Youth Innovation Promotion Association of the Chinese Academy of Sciences
- Youth Innovation Promotion Association