运行时
llama.cpp b12059 改进多序列统一 KV:优化的是并发注意力,不是显卡通用倍速
新构建纳入 flash_attn_ext_rows,以紧凑的 KV 行索引减少多序列注意力的额外处理。上游旧测试不是本次新实测,不能推成个人电脑的提速承诺。
本次时间窗内,llama.cpp 发布 b12059,纳入多序列统一 KV 缓存的注意力改造。发布页时间为 2026 年 11 月 2 日 22:41 UTC,对应北京时间 11 月 3 日清晨。这是引擎代码的新发布,不是新模型,也不是 AraoAI 完成了一轮硬件复现。
-
它解决什么。多个请求共用统一 KV 缓存时,注意力计算需要排除不属于当前序列的 token。上游 PR 说明,这种过滤会带来额外开销;新增 flash_attn_ext_rows 与 kv_rows 数据结构,用更紧凑的行索引表示每条序列需要读取的缓存,减少无关位置参与处理。
-
哪些场景值得关注。变化直接面向多序列推理与统一缓存。发布说明还提到按序列构建缓存单元列表、忽略滑动窗口已遮蔽的位置,以及处理不等长或交错序列的微批次。对同时服务多个会话的本地服务,这是值得做同机对照的改动;对只有一个短请求的桌面聊天,不能据此宣布同样收益。
-
哪些数字不能照搬。关联 PR 在更早时间已经给出开发者测试,本次合并并没有把旧表自动变成今天的新跑分。本文不转载旧速度表,不把上游作者的单机测试称为社区独立复现,也不将后端支持的描述扩大成所有显卡均已验收。
部署判断很简单:保留旧构建,固定模型权重、KV 精度、上下文、并发数和提示词,再分别比较首 token 延迟、预填充吞吐及每流生成速度。单流与总吞吐分开记录,不能只挑最快一列。当前确认的是改动已经进入新构建;你的机器能获得多少收益,仍须按实际后端重新测量。