ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

李勇演讲前瞻-从Linux内核存储到AI时代的系统软件视角

李勇演讲前瞻-从Linux内核存储到AI时代的系统软件视角 摘要过去两年AI 的瓶颈被反复归因于算力。但当集群规模稳定下来越来越多团队发现问题转移到了 IO训练卡在数据供给上千亿参数模型的 checkpoint 写入拖垮存储数据湖的访问延迟让特征 pipeline 成为常态瓶颈。这些都不是新问题——它们是文件系统与存储子系统工程师面对了二十年的经典课题只是换了一种负载形态。2026 奇点智能技术大会11 月 20-21 日 · 北京万达文华酒店C 及系统软件技术大会上Linux 内核 Maintainer、bcache 子系统维护者、飞牛 NAS 内核架构师李勇将带来这一视角。本文拆解 AI 时代的存储压力来源以及经典存储工程经验如何迁移到 AI 基础设施。一、AI 负载给存储出的三道新题AI 工作负载对存储的需求与传统企业负载有三点本质差异。第一是吞吐模式的极端分化。训练是大规模顺序读——成千上万的小文件或大文件的一段被连续灌入而 checkpoint 是突发的大块写——数分钟一次每次可能数十上百 GB。这两种模式在同一套文件系统上交替出现且都对抖动敏感读抖动会让 GPU 空转写抖动会阻塞训练循环。第二是元数据压力被严重低估。当数据集包含数千万个小文件时瓶颈往往不在带宽而在元数据操作打开、stat、目录遍历。这类开销在单机上不明显但在分布式文件系统的客户端缓存失效时会放大成灾难。第三是共享访问的语义冲突。多个训练作业读取同一份数据集同时数据管道在写入新版本。如何保证读作业看到一致的快照又不阻塞写入是一个典型的版本与一致性问题却常被当作配置问题草草处理。企业负载随机读写为主关注单请求延迟 AI 负载 大块顺序读 突发巨额写关注持续带宽与抖动二、bcache 的思路用层次换性价比理解 bcache 这类混合设备的思路对理解 AI 存储很有帮助。它的核心主张是在慢速大容量设备HDD与快速小容量设备SSD之间建立自动分层热数据落在 SSD冷数据沉到 HDD效果是接近 SSD 的性能、接近 HDD 的成本。热数据 ──► SSD 层快容量小 │ 自动迁移按访问热度 冷数据 ──► HDD 层慢容量大这个模型迁移到 AI 场景有三个值得关注的点。其一是分层依据。传统分层看的是块访问频率但 AI 数据集的访问模式高度结构化某些 shard 在整个训练期被反复读取某些只被访问一次。若能利用数据管道提供的 hints 而非仅依赖访问统计分层决策会更准。其二是写回策略的重要性上升。AI 的读写都极大写回缓存一旦配置不当故障恢复窗口内的数据丢失风险会显著放大这在动辄训练数周的作业里是不可接受的。其三是抖动控制。混合设备天然存在延迟毛刺——当缓存层正在回刷前台 IO 可能被拖慢。对 GPU 而言一次 IO 抖动就是一次流水线空转因此稳定的延迟分布比峰值带宽更有价值。三、Checkpoint最容易被忽视的系统压力几乎所有大规模训练团队都会在某一天被 checkpoint 问题击中。它的特殊性在于三点其一写入量巨大且集中。一个千亿参数模型加上优化器状态checkpoint 可能达到数 TB。若每次都全量写入训练有效时间的相当比例会被 IO 消耗。其二必须保证完整性。训练到一半断电后发现 checkpoint 损坏损失的是数天算力。这要求写入具备原子性语义——要么完整要么回退到上一个版本而非留下半文件。其三恢复 path同样重要。很多团队优化了写入却在故障恢复时发现从远端存储拉回 checkpoint 需要数小时。合理的做法是让最近的 checkpoint 留在本地高性能层较老的归档到远端。环节常见做法常见失误写入策略异步写 双层缓冲缓冲未落盘即被认为完成频率控制按时间或步数权衡高频写入拖垮训练吞吐版本保留指数退避保留多版本全部保留导致容量爆炸完整性写后校验 原子替换直接覆盖写坏无处可回一个务实的经验是把 checkpoint 当作灾难恢复的最短恢复点RPO来设计而不是当作附加功能来优化——这决定了它是被 seriously 对待还是被敷衍处理。四、从内核视角看 AI IO 的三个迁移经验二十年存储工程的经验里有三条特别值得迁移到 AI 基础设施第一条 locality 依然是最重要的优化。无论上层框架多复杂让相关数据物理相邻、让访问模式可预测永远是降低 IO 放大的根本手段。把数据集做 shard 而非数百万碎 файлы是最朴素也最有效的优化。第二条缓存一致性要显式设计。多节点读取同一份数据时客户端缓存的失效时机必须明确。依赖隐式超时往往会在数据更新后产生读到旧版本的诡异问题这类问题在训练里表现为不可解释的指标抖动。第三条观测要深入内核视角。仅看应用层吞吐是不够的需要关注 IO 队列深度、设备饱和度、文件系统级的写放大。很多存储慢的case最终定位到的都是写放大或队列配置不当而非设备本身不行。# 用写缓冲 原子替换保证 checkpoint 完整性defwrite_checkpoint(state,tmp_path,final_path):withopen(tmp_path,wb)asf:forchunkinstate:f.write(chunk)f.flush()os.fsync(f.fileno())# 确保真正落盘os.replace(tmp_path,final_path)# 原子替换避免半文件注意fsync与os.replace的组合前者保证数据落盘后者保证不会出现写了一半被读到的中间状态。这类朴素模式在生产里的价值远高于任何花哨的优化。五、系统软件工程师在 AI 时代的位置一个重要判断是AI 并没有削弱系统软件的重要性而是把它推到了另一个位置。模型与框架吸引大部分注意力但真正决定集群能否持续稳定产出的是下层——带宽、IO、调度、容错、thermal 与功耗管理。这些恰恰是传统系统软件的看家本领。从内核视角看许多AI 特有问题其实是经典问题的新变体数据供给是缓存预热问题checkpoint 是事务原子性问题多租户是隔离与公平调度问题。认出变体就能复用二三十年的既有解法而不是从零开始发明。六、给 AI 基础设施团队的三条存储建议最后给出三条可以直接落地的建议它们都来自长期的内核与存储工程实践。第一条先做数据布局再做硬件升级。把海量小文件打包成分片格式、让同一批次访问的数据物理相邻、避免目录层级过深这些改动通常不花一分钱却能带来成倍的吞吐提升。相反在碎片化的数据布局之上追加高性能硬件往往只能掩盖问题而非解决问题还会在后续规模扩张时成倍放大成本。第二条把抖动当作一等指标监控。平均带宽与平均延迟都容易被优化到好看真正影响训练效率的是延迟的长尾分布。建议按百分位采集 IO 延迟并与 GPU 利用率曲线对照观察当 GPU 利用率出现周期性凹陷时先怀疑数据供给而非算力本身。第三条为最坏情况做恢复演练。checkpoint 的写入逻辑再完善也需要定期验证它真的能被恢复。团队应当把从某个历史 checkpoint 完整恢复训练作为例行演练而不是依赖一次成功经验长期相信这套机制。恢复失败往往是多重小概率事件的叠加只有演练才能暴露那些平时看不到的依赖漏洞。三条建议的共同点是都强调工程纪律而非技巧。存储系统的可靠性来自长期的克制与验证而不是某次精巧的优化。七、NAS 与边缘场景带来的另一重启示除了数据中心还有一个常被忽视的视角NAS 与边缘设备上的存储设计经验正在反向为 AI 提供借鉴。在资源受限的 NAS 设备里工程师长期面对 SSD 写寿命、内存紧张、以及断电一致性等约束因此发展出了一批务实的工程原则。其一是写放大最小化每一次额外写入都会消耗 NAND 寿命因此需要仔细对齐写单元、合并小写入、减少元数据更新。其二是断电安全优先抖动cribe power loss 下的半写入状态必须以可回滚的方式处理而不是寄希望于文件系统自愈。其三是资源预算明确在有限内存里缓存大小、队列深度、并发度都需要被显式分配不能依赖默认值。这些原则迁移到 AI 基础设施后同样成立训练集群的存储设备同样有写寿命问题checkpoint 同样面临断电与崩溃一致性问题而 GPU 节点的内存同样需要在 KV Cache、数据缓冲与调度之间显式分配。约束越强的环境越容易产生好的工程原则而 AI 正在变成一个约束越来越强的环境。从这个角度看边缘与消费级存储长期积累的经验或许能在数据中心的大规模 AI 场景中找到新的用武之地。八、写给 AI 工程师的一条内核建议最后给习惯从框架与模型视角思考问题的工程师一条具体建议学会看三层以下的指标。多数 AI 工程师熟悉的观测层级是框架层与硬件层一边是数据加载 throughput、GPU 利用率另一边是网卡带宽、磁盘 IOPS。真正缺失的往往是中间那层——文件系统的写放大、块层的队列深度、设备层的饱和度、以及页缓存命中情况。而大量存储相关的性能问题恰恰藏在这一层。一个典型的诊断路径可以说明它的价值当训练吞吐出现周期性下降若只看 GPU 利用率会看到它与利用率凹陷恰好对应于是猜测是算力或通信问题但若补上一层 IO 延迟的百分位曲线可能会发现每次凹陷前都有一次延迟尖峰进而定位到某个周期性触发的后台回刷或元数据同步任务。同样的现象在不同层级看到的原因完全不同。内核工程师长期的价值很大程度上就来自这段向下看一层的能力。而在 AI 基础设施日益复杂的今天这种能力正从锦上添花变成稀缺资源。九、大会前瞻11 月 20-21 日北京万达文华酒店2026 C 及系统软件技术大会系统级软件专题。与 AI 侧的议题不同这一侧的讨论更接近底层硬件行为、操作系统机制、语言特性的深度结合。李勇带来的内核视角对正在被数据 IO 拖慢训练、或被 checkpoint 问题反复困扰的团队提供了另一层解题思路。带着自己的 IO 曲线与存储成本构成去听会比听抽象理论的收获更大。大会信息2026 奇点智能技术大会 C 及系统软件技术大会时间2026 年 11 月 20-21 日地点中国·北京万达文华酒店大会报名链接点击报名参会立即报名锁定 Lukasz Kaiser Keynote 与 70 场演讲完整资料
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进