论文
LLVM-Bench:LLVM 编译器问题解决的基准测试和推进 大语言模型
LLVM-Bench: Benchmarking and Advancing Large Language Models for LLVM Compiler Issue Resolution
摘要
LLVM 是一种广泛使用的编译器基础设施,其规模和复杂性使得问题解决变得劳动密集型且具有挑战性。尽管 大语言模型 (LLM) 最近在问题解决方面取得了显着的成功,但它们在复杂系统级 LLVM 编译器上的有效性在很大程度上仍未得到探索。为了弥补这一差距,我们引入了 LLVM-Bench,这是第一个用于 LLVM 问题解决的大规模基准测试,其中包含从 LLVM 项目收集的 423 个现实世界中经过验证的任务。我们进一步开发了 LLVM-Gym,这是一个可扩展的评估平台,可以自动执行问题重现、补丁应用、编译器构建和测试执行。使用 LLVM-Bench 和 LLVM-Gym,我们对四种代表性的 LLM、六种检索配置和三种代理进行了全面研究。我们的结果表明,当前基于 LLM 的问题解决技术在 LLVM-Bench 上仍然受到限制,补丁无效和构建失败是主要的故障模式。我们进一步揭示了不同 LLM 和代理之间的强大互补性,激发了 LLVM-Ens,这是一种轻量级集成方法,通过集成不同技术生成的补丁来扩展补丁空间,过滤不正确和冗余的候选者,并识别最有希望的解决方案。我们的结果表明,LLVM-Ens 的解决率高达 21.99%,进一步提高了 LLVM 问题的解决率。