
【软件性能优化新趋势】
前几天有推文称,抱怨大语言模型使代码变慢变臃肿的人,等用高度优化的汇编语言重写代码后会自食其言。诺兰·劳森关于测试的话“你现在可以选择想要多少个 bug”,在性能优化方面越来越适用。过去需罕见技能个人或团队完成的性能优化工作,如今能敲出几句话的人就能做,意味着可进行更多以前成本高的优化。
【各方观点回应】
马克·布鲁克回应称,针对特定工作负载定制的动态软件可能是未来方向,这让他想起快速傅里叶变换库和旧演示场景技术。迈克尔·马利斯指出,大语言模型降低入门门槛,让编写即时编译器变容易,人工智能让软件构建更有野心。
【正则表达式引擎优化实验】
用FRE正则表达式引擎实验,它经智能体优化但严重过拟合于rebar测试集,提醒后在预留测试集性能提升。其原生提前编译版本在长文本搜索表现不错,在ripgrep运行时结合原生代码编译可提升性能。几分钟内完成实验,对较长查询,简单查询有2到4倍性能提升,代表性预留查询约7%速度提升。
【构建索引的思考】
有人认为加速文本搜索应创建索引。作者曾参与微软必应搜索索引BitFunnel开发。若在人工智能实验室,可能调研现有索引器或定制。对普通账户,稍快的ripgrep加现成索引足够,全机器索引项目可留给实验室读者。
【优化成本大幅降低】
从2025年11月开始,优化成本大幅降低。以《azul》游戏人工智能为例,作者构建的人工智能成为世界最强,花费时间比对方少两个数量级,且在笔记本电脑上工作。多线程算法等优化若手动完成是大工程,智能体可轻松循环完成调试验证任务。过去优化的繁琐工作减少,值得进行的优化数量增加。游戏人工智能优化复杂,但搭建好判断框架后与其他优化问题类似。杰米·布兰登用Claude完成性能测试题成绩更好。
【特定工作负载优化趋势】
马克·布鲁克和迈克尔·马利斯都认为针对特定工作负载定制软件是未来方向。作者让智能体对ripgrep查询进行特定工作负载优化,初步结果有希望,优化后版本在预留测试集比标准ripgrep快2%且性能在提升。大公司应与客户合作开展试点项目,个人项目也可尝试。
【写作情况说明】
有了编码智能体,实验时间减少,但结果严谨性所需时间未变甚至增加。作者尝试快速不严谨写文章,但仍耗时,目前不想让大语言模型写文章,也难以将整理数据和写作时间缩短到半小时以内。欢迎读者对文章提看法。
【附录:软件不应变慢】
作者反对认为软件开发者水平差导致代码慢的观点,因为多数程序员无性能优化专业知识正常且企业要求不合理。编码智能体在有边界优化问题上能胜过杰米·布兰登,虽在开放式问题表现差,但能实现合理性能提升,在前端性能优化指标上表现也不差。
【附录:Codex运行ripgrep情况】
作者机器上ripgrep查询搜索模式长度长,中位数55个字符,第90百分位数119个。正则表达式交替分支数量复杂,且长度与分支数量正相关。最长正则表达式多为函数名或测试名长交替,也有数字构造。查询耗时方面,第99百分位数接近1分钟,第99.9百分位数接近10分钟,最长接近2小时。Codex常需行号,偶尔用PCRE2正则表达式。搜索模式局部性低,被搜索文件局部性高。99%查询是正则表达式查询,99.9%搜索查询仅含ASCII字符,被搜索文件中约45%仅含ASCII字符,55%含Unicode字符。特定工作负载优化较表面,详细计划有望带来更大性能提升。
679



被折叠的 条评论
为什么被折叠?



