本文是LLM系列文章,针对《Meta Large Language Model Compiler: Foundation Models of Compiler Optimization》的翻译。
元大型语言模型编译器:编译器优化的基础模型
摘要
大型语言模型(LLM)已经在各种软件工程和编码任务中展示了非凡的能力。然而,它们在代码和编译器优化领域的应用仍然没有得到充分的探索。训练LLM是资源密集型的,需要大量的GPU时间和大量的数据收集,这可能会令人望而却步。为了解决这一差距,我们引入了元大型语言模型编译器(LLM编译器),这是一套专门为代码优化任务设计的健壮、公开可用的预训练模型。LLM编译器建立在Code Llama的基础上,增强了对编译器中间表示(IR)、汇编语言和优化技术的理解。该模型已经在5460亿个LLVM-IRtoken和汇编代码的庞大语料库上进行了训练,并经过了指令微调以解释编译器行为。LLM编译器是根据定制的商业许可证发布的,以允许广泛重用,有两种尺寸:70亿和130亿参数。我们还展示了该模型的微调版本,展示了其在优化代码大小和从x86_64和ARM组件反汇编回LLVM-IR方面的增强功能。这些功能实现了自动调整搜索的77%的优化潜力,以及45%的反汇编往返(14%的精确匹配)。本版本旨在为学术研究人员和行业从业者在编译器优化方面的进一步研究和开发提供一个可扩展、经济高效的基础。