TurboQuant+MTP在ROCm(Llama CPP)上的实现
摘要
一位开发者成功在llama.cpp中让TurboQuant TBQ4 KV缓存和多Token预测在AMD ROCm上针对RDNA3 GPU运行,实现在24GB显存上支持64k上下文,并具有有竞争力的token速率。
TL;DR: 我成功让TBQ4 KV缓存+MTP在llama.cpp中运行于AMD ROCm的RX 7900 XTX / RDNA3 / gfx1100。主要成果:64k上下文可容纳在24 GB显存中,并且保持可用性。
Branch: tbq4-rdna3-experiment (https://github.com/DrBearJew/llama.cpp/tree/tbq4-rdna3-experiment)
我深入研究了AMD上的TurboQuant / TBQ4 + MTP,因为现有的AMD路径对我的配置不完整或有缺陷。此分支使用带有内联TBQ4反量化的ROCm VEC Flash Attention路径。
测试设置:
\\- RX 7900 XTX, 24 GB
\\- RDNA3 / gfx1100
\\- ROCm / HIP
\\- Qwen3.6-27B Q4\\_K\\_M MTP GGUF
\\- tbq4\\_0 KV cache
\\- MTP with --spec-draft-n-max 3
当前数据:
\\- tbq4\\_0, 64k ctx: 38–54 tok/s, ~20 GB VRAM
\\- 预填充:16k时537.7 tok/s;64k测试中360.8 tok/s
\\- q8\\_0基线:16k时约49.8 tok/s,32k时约31 tok/s,占用约22–23 GB显存
注意事项:
\\- RX 7900 XTX 是RDNA3 / gfx1100,而非RDNA3.5。
\\- 已启用RDNA3.5 / RDNA4但未经测试。
\\- 存在RotorQuant / PlanarQuant / IsoQuant但未验证。
\\- 这些是来自不同运行的数据点,并非完整的缩放曲线。
欢迎新测试者。有用的Bug报告比炒作更有价值。
相似文章
成功运行 MTP + TurboQuant — Qwen3.6-27B 在单 RTX 4090 上实现 262K 上下文 80+ token/秒
开发者通过将 MTP(多 Token 预测)与 TurboQuant 的无损 KV缓存压缩技术相结合,在单张 RTX 4090 上实现了 Qwen3.6-27B 模型在 262K 上下文下 80+ token/秒的推理速度,并分享了实现分支和技术细节。
双Radeon R9700——在llama.cpp上运行Qwen 3.6 27B Q8 MTP
关于在使用ROCm的llama.cpp上,于双AMD Radeon R9700配置下运行Qwen 3.6 27B Q8模型的技术报告,包括性能基准测试和配置详情。
在 12GB 显存下,使用 Qwen3.6 35B A3B 与 llama.cpp MTP 实现 80 tok/sec 的速度和 128K 上下文
一名用户分享了一份配置方案,该方案在使用 llama.cpp 和多令牌预测(MTP)的情况下,能在 12GB 显存的 GPU 上让 Qwen3.6 35B A3B 模型实现超过每秒 80 个令牌的生成速度。帖子中包含了基准测试结果以及用于优化性能的具体命令行参数。
Qwen 3.5 122B Heretic ROCmFP4 iMatrix
Qwen 3.5 122B 模型的一种紧凑型、重要性校准的 ROCmFP4 量化版本,适用于高内存 AMD 系统,实现了更优的质量(KLD 降低 14%)和性能(28.45 tok/s)。需要 ROCmFPX 运行时,不兼容标准 llama.cpp。
在LLaMA.cpp + TurboQuant上为Qwen实现的多Token预测(MTP)
在LLaMA.cpp上结合TurboQuant为Qwen实现了多Token预测,性能提升40%,接受率90%,在MacBook Pro M5 Max上本地运行。