首页 > 教程资讯 > 教程详情

Torvalds 用 Claude Code 编写 Linux 页缓存实验补丁,公布特定负载测试结果

AI 与前沿 编辑部小鹿 2026-10-13
文章分享

Linux 创始人 Linus Torvalds 在页缓存读取优化实验中使用了 Claude Code。据 Linuxiac 报道,这组补丁尝试缓解多个线程读取同一缓存文件时的争用问题;AI 助手在他的指导下参与代码、测试程序和说明初稿等工作,他本人负责运行性能测量。其笔记本上的特定多线程测试显示吞吐提升,但补丁仍处于实验阶段,尚未合入主线。

AI 参与了哪些工作

据 Linuxiac 报道,相关提交日期为 10 月 10 日,标题为「mm: read from the page cache without folio references」。Torvalds 在提交说明中明确写道:代码、测试程序、针对所列问题的评审梳理,以及说明文字的初稿,均由 LLM 编程助手 Claude Code 在其指导下完成;测量则在他自己的机器上运行。

据 It's FOSS 报道,分支名为 noref-filemap-read-with-llm,包含 8 个补丁,基于 Linux 7.3-rc6 加额外修复构建。提交说明没有给出计划合入的内核版本。

优化针对共享计数器争用

据 It's FOSS 介绍,页缓存是在内存中保存的近期读取数据副本。现有读取过程需要获取并释放对缓存数据的引用;多个线程读取同一文件时,会更新同一个引用计数器,从而产生争用。Matthew Wilcox 曾在 2024 年根据某客户的工作负载指出这一问题。

Linuxiac 报道称,实验补丁使用内核的 Read-Copy-Update 机制,让部分读取无需额外获取页面引用。It's FOSS 解释,离开缓存的内存会延迟一小段时间再供复用,使读取方能直接复制数据;代价是更多内存会短暂闲置。

吞吐提升有明确测试条件

据 Linuxiac 转述的 Torvalds 自测结果,测试设备是搭载 Intel Core i7-8565U 的笔记本,具备 4 核 8 线程,使用 ext4,且关闭了部分内核安全缓解措施。

在 8 个线程反复从同一缓存文件读取 16 字节的测试中,吞吐从约每秒 1000 万次升至 3000 万至 3300 万次。4 个线程分布在不同核心时,从约每秒 900 万至 1200 万次升至 2500 万至 2600 万次;单线程则从约每秒 800 万次升至接近 900 万次。

这些结果对应特定读取负载,不能代表 Linux 整体性能提升。Linuxiac 同时指出,补丁在部分情况下会增加开销,尤其是读取遇到缺失内存页时。提交说明还讨论了内存分配行为、兼容性、潜在回退和延迟内存复用的性能影响等未解决问题,是否最终合入仍未确定。

相关下载

来源