AI 技术日报
本期重点:KV 缓存在 SSD 上命中,为什么请求仍会回退到重新计算?FlatCake 把存储布局、数据搬运和请求调度放在一起处理。经典回顾重读 FlashAttention 怎样用重计算换掉显存读写。
重点
FlatCake:让 SSD 缓存恢复绕过主机中转
长对话和编程 Agent 的键值缓存(KV Cache)可能超过主机内存容量。分层缓存通常先把数据放入主机 DRAM,淘汰后再写入 SSD;恢复时又先读回主机缓冲区,再送到 GPU。FlatCake 论文指出,并发恢复长上下文会耗尽这块中转空间,迫使预取取消。数据虽然还在 SSD 上,请求却要重新计算前缀。
FlatCake 在缓存块创建时就决定放入 DRAM 或 SSD,之后不再逐层迁移。共享提示和短对话可留在 DRAM,长会话缓存按会话归拢到 SSD,并按模型层组织连续数据。恢复时合并相邻读取,经 GPUDirect Storage 直接送入预留的有限 GPU 显存缓冲区,与逐层计算同时推进。调度器把等待 SSD 的请求与 DRAM 已就绪的请求分开,避免一次慢恢复堵住后面的快请求。
作者在八张 B200、八盘 NVMe RAID 0、DeepSeek-V4-Flash-0731 和 FP8 KV 缓存上回放编程 Agent 轨迹,各方案均分配 1 TiB 主机缓存和 4 TiB SSD 缓存。每秒到达一个请求时,相对经过主机中转的 Mooncake,平均首 token 延迟从 12.24 秒降到 7.57 秒。关键不只是让 SSD 直达 GPU:数据在写入时的布局,也决定恢复时能否合并成大块读取。
https://arxiv.org/html/2610.38355v1
简讯
verl:给采样的量化权重,与保存的训练权重分开导出
verl 在 VeOmni 训练引擎中接入面向采样的权重量化器:同步给生成端的张量流经过量化,保存检查点时则使用独立导出路径,不附加这次采样量化。这样,低精度生成所需的权重处理不会混入训练权重保存。修改已于 2026-10-28 合并;对模型原生量化格式仍有专门约束,不能任意改写成另一种格式。
https://github.com/verl-project/verl/pull/8369
研究 Agent:数字确实存在,也可能引用了错误实验
一项研究人工标注了 18 份 Agent 稿件中的 256 条数值断言。在其中缺乏支持的断言里,约五分之四能在文件中找到同值数字,却属于别的实验、指标或运行。作者的检查器同时匹配数字和上下文,并用附近的其他数字检验是否容易认错。它将“找到了这个数”与“找到了支撑这项结论的实验”分开;未能核验也不直接判为造假。
https://arxiv.org/html/2610.38691v1
GPU–WSE:混用两种加速器,先看任务能否分开
GPU 与晶圆级加速器 WSE 的计算规模和片上存储不同,直接均分任务未必能相加提速。一项研究分别实测 WSE-3 和 DGX A100,再用校准后的模拟器组合异构执行。数据并行可调整两侧分担的样本量;流水线却要求各阶段采用相同的微批次大小,并等待最慢阶段。它把异构服务器的配置问题落到负载切分自由度与互连成本,而不是只比较峰值算力。
https://arxiv.org/html/2610.39222v1
PaperBenchX:评分只认干净环境中重新生成的证据
PaperBenchX 将论文复现扩展到 12 个研究领域的 93 项任务,要求 Agent 使用对应的科学软件重建关键实验。提交的工作流会在干净环境里从头运行,评分只使用重新生成的结果,并检查几何、边界条件或数值设置是否符合目标实验。运行成功和输出数值相近都不能单独通过;评测要确认结果来自正确的科学问题。
https://arxiv.org/html/2610.39744v1
ProCerDCL:测试没发现编译差异,还要计算漏检风险
编译优化可能因浮点执行变化而改变模型预测。ProCerDCL 在事先指定的输入扰动分布上,逐次比较参考模型与编译模型的预测类别,随样本增加持续检验不一致概率。达到证据要求才接受或拒绝,样本不足则暂不判断;保证依赖独立采样,同一输入的判断也不能受先前调用影响。它让“测过没出错”变成有明确分布和错误预算的结论。
https://arxiv.org/html/2610.36499v1
PyTorch:确定性开关仍需落实到稀疏乘法的算法选择
PyTorch 的问题报告显示,启用确定性算法后,部分 CUDA 稀疏矩阵乘法仍忽略这一设置,有长稀疏行时重复运行会得到不同结果。待审修复根据 cuSPARSE 版本和输入形式选择可复现算法,并增加逐位比较测试。审查仍在讨论测试覆盖与容差,尚未合并。它说明随机种子固定之外,还需检查算子实际选用了哪种计算路径。
https://github.com/pytorch/pytorch/issues/202030
https://github.com/pytorch/pytorch/pull/202968
经典回顾
FlashAttention:为什么多算一些,反而可以更快?
FlashAttention 首版公开于 2022-05-28,面对的是长序列注意力矩阵占用显存、反复搬运中间结果的问题。它把计算分块,在 GPU 片上内存中逐块更新 Softmax 和输出,不把完整注意力矩阵写入显存。反向计算时,利用前向保存的归一化信息重新计算所需片段,以额外运算换取更少的显存读写。现在读这篇旧论文,可以把内核融合与重计算放进同一套数据移动分析,而不只比较运算次数。带着一个问题读:如果片上空间变小,分块顺序怎样影响必须重复读取的数据量?