论文

CodeEvolve:LLM 驱动的进化优化,具有运行时丰富的目标选择,用于多语言代码增强

CodeEvolve: LLM-Driven Evolutionary Optimization with Runtime-Enriched Target Selection for Multi-Language Code Enhancement

摘要

我们推出了 CodeEvolve,这是一种使用 大语言模型 (LLM) 提高程序性能和代码质量的进化框架。 CodeEvolve 通过运行时引导的目标选择、蒙特卡罗树搜索 (MCTS)、自动代码优化以及针对 Java 和 Salesforce Apex 的特定于语言的评估管道扩展了 OpenEvolve。该系统使用 Java Flight Recorder (JFR) 配置文件来构建加权组件图并选择占大部分执行成本的优化目标,从而减少对手动瓶颈识别的依赖。对于每个目标,CodeEvolve 生成​​候选编辑,通过构建验证、单元测试、性能检查、静态分析和基于 LLM 的审查来评估它们,并仅保留保留功能正确性的变体。在现实世界的优化任务中,CodeEvolve 在保持正确性的同时提高了性能和代码指标。在大型企业 Java 代码库上,它在七个热点函数上实现了 15.22$\times$ 的平均加速,并且在其中五个热点函数上的性能优于单遍 LLM 优化。 Apex 优化的消融研究表明,完整的 MCTS 增强配置平均在 20 个程序中产生 19.5 个有效程序,这表明搜索、过滤和细化各自有助于更可靠的优化。