16GB 显存跑 Qwen 27B:llama.cpp MTP 改版提速 17%
ea_man · reddit · 2026-09-01
作者为 llama.cpp 的 MTP(多 token 预测)推测解码做了低显存优化版 MTP Compact Rollback,让 16GB 显存也能跑 Qwen 27B 这类模型并保留足够上下文。
核心思路:MTP 生成的推测 token 越多越快,但回滚状态要占显存、挤占上下文。新参数 --spec-mtp-cr-depth 1 只保留一份即时回滚快照,却仍允许 MTP 一次推测 5 个 token,即以 depth=1 的上下文代价享受 depth=5 的速度。
实测数据(16GB、调优过的 IQ4 量化):
| 模式 | 最大推测 n | 可用上下文 | 生成速度 |
|---|---|---|---|
| 标准 MTP | 2 | 72,192 | 39.53 t/s |
| Compact Rollback | 5 | 77,312 | 46.39 t/s |
上下文多 5k,生成速度提升 17.35%。代码生成场景的推测接受率高达 80-98%。
搭配 Adaptive MTP(--spec-draft-adaptive)可根据近期接受率动态调整推测深度:代码用高 n-max,长推理链中的创意文本自动降档,计算开销极小,作者建议常开。
推荐完整参数(27B 与 A3B 编码用):
--spec-mtp-cr-depth 1 --spec-draft-adaptive \
--spec-type draft-mtp,ngram-mod --spec-draft-p-min 0.80 --spec-draft-n-max 5 \
--cache-type-k-draft q40 --cache-type-v-draft q40 \
--spec-ngram-mod-n-match 24 --spec-ngram-mod-n-min 8 --spec-ngram-mod-n-max 32
构建方式为克隆 llama.cpp(指定 commit)、打作者提供的 patch 即可,文末还给出了示例脚本与文档链接。
「编程与Agent」频道最新
- AI 时代代码需被解释而非被人类理解 — kieranklaassen · 2026-09-01
- 自研工具结合 AI 生成教材打造互动学习流 — generativist · 2026-09-01
- Agent 难读 LinkedIn:主流社交平台封杀 AI 爬虫 — Dry_Steak30 · 2026-09-01
- 无需向量库:用状态驱动协议解决 LLM 上下文崩塌 — wenger2026-12 · 2026-09-01
- 用 Rust 运行时约束 AI 编写并发程序的实践 — doodlestein · 2026-09-01
- Intent 被誉为笔记本上的首选开发环境 — Wattenberger · 2026-09-01