llama.cpp MoE 专家 LRU 缓存:RTX 5090 推理提速 2.2 倍

abhishekkumar333 · reddit · 2026-10-22

llama.cpp 两周前合并的 PR #29887(am17an 实现,移植自 Tether 的 qvac-fabric)可能是今年本地推理最重要的改进:把一块 VRAM 划作 MoE 专家的 LRU 缓存。

原理:Qwen3.8-Flash-Next 总参 125B、激活仅 6B,每 token 需从内存搬运约 1.3GB 专家权重。但专家路由有局部性——相邻 token 大概率选中相同专家,少数专家极热。缓存命中则零搬运,未命中才经 PCIe 复制那一个 2.6MiB 的专家并按 LRU 淘汰。

实测(同模型同机器):RTX 4090 24GB 从 25.0 提到 40.7 tok/s(1.62x,命中率 77%);RTX 5090 32GB 从 30.8 提到 67.8 tok/s(2.20x,89%);AMD R9700 32GB 提升 2.5 倍、命中率 94.6%。5090 收益更大因为 PCIe 5.0 降低 miss 代价且显存更大。

用法:llama-server ... -cmoe --moe-cache-mib 11000,经验值取专家字节数的约 10%。SGLang 12 天后也以 "paged experts"(PR #42557)合并了同一思路。作者还提供了显存计算脚本和专家缓存模拟器。

原文链接 →

「Infra」频道最新

更多「Infra」频道 AI 资讯 →