llama.cpp 项目发布了构建版本 b10724,通过按连续运行批次化 scatter 读取,显著提高了恢复非连续 KV 缓存单元的性能。

  • 通过预计算连续的目标索引并使用单次复制代替单个单元复制,优化了碎片化环形缓冲区的状态恢复。
  • 修复了设备端阅读器中的断言失败问题:当保存和恢复的张量计数匹配但分块不同时,回退到字节游标复制。
  • 添加了主机和设备端测试,验证交错序列单元的字节级状态恢复一致性。

此优化将大型恢复所需的内存复制次数从超过 130 万次减少到仅 224 次,将恢复时间从数十秒缩短至不到半秒。