@no_stp_on_snek: 当所有人都在讨论 @SpaceXAI、@AnthropicAI 和 @OpenAI 的更新(但 @GoogleAI 呢?)... 我去测试了…
摘要
Unsloth 的 NVFP4 量化模型在 vLLM 和 llama.cpp 之间推理性能的详细比较,重点说明了 vLLM 在预填充速度上的优势,但 llama.cpp 在单流智能体工作负载中的解码和缓存优势。
查看缓存全文
缓存时间: 2026/07/11 17:27
大家都在讨论 @SpaceXAI、@AnthropicAI 和 @OpenAI 的更新(但是 @GoogleAI 呢?)……
我专门测试了 @UnslothAI 的新 NVFP4 模型,验证了他们的说法。
unsloth 的 NVFP4 检查点在 vLLM 上的 prefill 速度大约是我用 llama.cpp GGUF 的 2 倍。但我还是坚持用 GGUF,而原因完全出乎我的意料。
Qwen3.6-27b NVFP4,单张 5090(32GB),WSL2。注意:我的 llama.cpp 用的是 Blackwell 原生 NVFP4 内核分支,不是官方版本,所以用官方构建无法复现这些数据。
Prefill:vLLM 约 6600 tok/s,llama.cpp 约 2800-3400 tok/s。vLLM 大概快 2 倍(我的 llama.cpp 数据是服务端计时,vLLM 是真实时钟,所以我不纠结精确比例)。Decode:llama.cpp 109 tok/s,vLLM 使用 MTP 推测解码 97.9 tok/s,不使用则 63.8 tok/s。llama.cpp 胜出。权重大小:16.6GB vs 20.5GB。冷启动时间:11 秒 vs 几分钟。
首先纠正我自己的一个错误,因为我差点发表了错误的结论。我之前以为 vLLM 把上下文限制在 32K,其实不是。那个限制是我自己设的,是在一次 OOM 冲突中保守设定的,之后再也没有重新测试(感谢 Claude)。实际上 KV 池能容纳约 94k tokens。我的会话本来完全够用。评估永远是自己骗自己,我也被自己骗了。
真正的原因不那么明显但更有趣:vLLM 对混合 Mamba/DeltaNet 架构会自动禁用前缀缓存。所以每个智能体轮次都会从头重新对整个对话进行 prefill,大约 36k tokens 要花 5.5 秒。而 llama.cpp 会检查点循环状态,在我的实际流量上达到 97-100% 缓存命中率。
这就是关键所在。我的工作负载是一个智能体依次执行轮次,不断发送增长中的对话。vLLM 的 2 倍 prefill 优势全用来重做 llama.cpp 根本不用做的工作,而 llama.cpp 的 decode 优势则体现在生成的每个 token 上。
是的,单个请求。这就是重点。vLLM 是为并发服务设计的,单流是它最差的情况。但单流恰恰是我的工作负载,这也是整篇论述的核心观点。
如果你也想尝试这个服务方案,提一下我的尝试过程:尝试了 7 次。其中 4 次在几乎相同的 ~52GB + 20GB 交换峰值时 OOM 被杀死,无论编译并行度限制、多模态关闭、小 batch、8k 上下文,甚至完全 eager 模式,这个峰值都不变。模型加载从未出问题(每次 14 秒内占用 20.5GB 显存)。这个峰值出现在加载之后,在 profiling 和图捕捉阶段,看起来是 vLLM 0.24 中混合门控 DeltaNet 架构的特有问题。它需要 70-100GB 的主机内存。解决办法是将 WSL 提高到 58GB + 48GB 交换空间。这是 WSL2 的内存上限问题,原生 Linux 可能永远不会遇到。
公平地说,unsloth:它在冷启动长上下文单次生成中确实有优势,首令牌时间大约快 2 倍。而且他们声称的“2.5 倍”是针对其他 vLLM NVFP4 量化版本测量的,所以这个说法完全可能属实,同时它在 decode 上仍然输给 llama.cpp + MTP。我检查了两者,并不矛盾。
总结:评估你自己的工作负载。标题上的数字几乎从来不是对你真正重要的数字。
相似文章
比较 llama.cpp 行/张量分割与 ik_llama 图分割的双GPU推理速度
一位用户使用llama.cpp(行/张量切分)和ik_llama(图切分)在两张RTX 3080 20GB上对双GPU推理速度进行了基准测试,使用Qwen3.6-27B GGUF模型,比较了token生成和提示处理速度。
如果你只是自己使用模型而不对外提供服务,vLLM 真的值得用吗?
一名用户讨论了在 AMD 硬件上进行本地单用户推理时,使用 vLLM 与 llama.cpp 之间的权衡,质疑在非企业级环境中 vLLM 的性能优势是否足以弥补其带来的复杂性。
@mr_r0b0t: 叫上兄弟们,新的 @UnslothAI NVFP4 刚刚发布
Unsloth AI 发布了新的 NVFP4 量化 Qwen3.6 模型,在 GPU 上运行速度提升 2.5 倍,并提高了准确性和工具调用能力。
@_avichawla: Anthropic. Google. Meta. 每个人都在用来自1990年代的一个想法将LLM推理速度提升2-3倍。在1990年代,CPU设计者…
推测解码受1990年代CPU分支预测启发,现被Anthropic、Google和Meta用于将LLM推理速度提升2-3倍。它使用一个小模型来猜测未来的token,并用一个大模型并行验证它们,从而避免了解码期间GPU空闲时间。
@TheAhmadOsman: 自2023年以来,我的使命就是教导人们并帮助他们运行自己的AI。2026年6月将标志着…
Ahmad (@TheAhmadOsman) 宣布了一篇博客文章,涵盖 llama.cpp、vLLM 和 ExLlamaV2 等推理引擎,重点关注多 GPU 设置、张量并行以及批处理推理,以优化 AI 模型性能。