ECO:一种面向仓库规模计算机的LLM驱动的高效代码优化器
软件工程
2025-03-21 v1
摘要
随着摩尔定律的终结,针对性能优化代码已成为满足不断增长的计算需求的关键,特别是在超大规模数据中心中,即使微小的效率提升也能转化为显著的资源和能源节省。传统上,这一过程需要程序员付出大量努力来识别优化机会,修改代码以实现优化,并仔细部署和衡量优化的影响。尽管在自动化程序编辑方面已有大量工作并在小规模环境中取得了有前景的结果,但由于规模、高度复杂性和可靠性要求,此类性能优化在大型真实世界生产环境中仍然难以实现。本文介绍了ECO(高效代码优化器),一个自动重构源代码以在大规模上提升性能的系统。为了实现这些性能提升,ECO在大规模上搜索历史提交,以创建这些提交所解决的性能反模式字典。这些反模式用于在数十亿行代码的代码库中搜索类似模式,精确定位具有类似潜在优化机会的其他代码段。使用微调后的LLM,ECO随后自动重构代码以生成并应用类似的编辑。接下来,ECO验证转换后的代码,提交代码审查,并衡量优化在生产中的影响。该系统目前部署在Google的超大规模生产集群上,已经驱动了超过25k行生产代码的变更,涉及超过6.4k次提交,生产成功率超过99.5%。在过去的一年中,ECO每季度都持续带来了显著的性能节省。平均而言,每季度产生的节省相当于超过50万个标准化CPU核心。
引用
@article{arxiv.2503.15669,
title = {ECO: An LLM-Driven Efficient Code Optimizer for Warehouse Scale Computers},
author = {Hannah Lin and Martin Maas and Maximilian Roquemore and Arman Hasanzadeh and Fred Lewis and Yusuf Simonson and Tzu-Wei Yang and Amir Yazdanbakhsh and Deniz Altinbüken and Florin Papa and Maggie Nolan Edmonds and Aditya Patil and Don Schwarz and Satish Chandra and Chris Kennelly and Milad Hashemi and Parthasarathy Ranganathan},
journal= {arXiv preprint arXiv:2503.15669},
year = {2025}
}