单B300上的DS V4:vLLM批处理仅770 tok/s
摘要
用户分享了在单块B300 GPU上使用vLLM运行DeepSeek-V4-Flash的性能数据,达到约770个输出令牌每秒,并询问如何调整配置以提高吞吐量。
我一直在用DeepSeek-V4-Flash运行一个离线批处理任务(清理大量短文本记录,所以有很多小提示而非对话)。单块B300,vLLM 0.25.0,在进程内通过LLM.chat处理批数据。推理开启,每项约300个输出令牌。我目前能达到的最佳成绩是批量256时约770个总输出令牌/秒。对于B300来说,这个数值感觉有点低,我原以为能达到几千,所以我猜想可能有什么地方配置错了,想和真正运行过的人核对一下。我摸索中发现了一些问题:deep_gemm_mega_moe在单GPU上会报硬错误("MegaMoE requires expert parallel"),所以快速的MoE内核似乎需要多GPU。我回退到了flashinfer_trtllm。关闭DSpark推测解码后吞吐量大约翻了一番。在饱和批次下,它似乎只会增加开销,这也有点道理,但我想确认这是否符合预期,而不是我这边的问题。我怀疑V4稀疏MLA注意力路径可能以eager模式运行(没有cuda图),从而限制了性能,但尚未确认。大致配置:model: DeepSeek-V4-Flash (base, no DSpark) tensor_parallel_size: 1 kv_cache_dtype: fp8 block_size: 256 max_num_seqs: 256 enable_prefix_caching: true moe_backend: flashinfer_trtllm reasoning_parser: deepseek_v4 attention_config: use_fp4_indexer_cache=true compilation_config: cudagraph_mode=FULL_AND_PIECEWISE 给运行V4 Flash的人一些问题:你们实际的令牌/秒是多少,单流和批处理分别多少,用的是什么GPU?在单GPU上使用什么MoE后端?有没有不需要专家并行的快速后端?稀疏MLA路径默认是否应该使用cuda图,或者是否有标志或环境变量可以开启?(我听说过VLLM_TRITON_MLA_SPARSE_ALLOW_CUDAGRAPH,但不确定是否真实。)上面的配置有没有明显错误或遗漏?等我解决后会很高兴反馈数据。谢谢。
相似文章
Deepseek V4 Flash 在两块 Nvidia 4090d 48G (ada) 上以 vLLM 运行,速度约 105 t/s
技术文章:详细介绍如何使用自定义Triton内核和vLLM在两块Nvidia 4090d GPU上运行DeepSeek V4 Flash,在262k上下文环境下实现约105 tokens/秒的推理速度。
DeepSeek V4 Flash(98GB)在单块4060 Ti加CPU上本周速度提升300% [从2t/s到7t/s]
DeepSeek V4 Flash(98GB)现在通过CPU卸载,在单块RTX 4060 Ti上运行速度可达每秒7个token,相比上周的2t/s提升了3倍。
针对双GH200优化的DSv4-Flash:SGLang上PP达10,000 tok/s,TG超过300 tok/s
DeepSeek V4 Flash在双GH200工作站上的详细基准测试,比较了SGLang和vLLM在1M上下文长度下使用DSpark投机解码的表现,发现SGLang更快,约为317 tok/s对比276 tok/s。
DeepSeek-V4-Flash W4A16+FP8 结合 MTP 自推测:在 2 张 RTX PRO 6000 Max-Q 上以 524K 上下文长度实现 85 tok/s
这篇文章详细介绍了一个经过定制并量化的 DeepSeek-V4-Flash 模型版本,启用了 MTP 自推测功能。通过修改后的 vLLM 设置,在双 RTX PRO 6000 Max-Q GPU 上实现了显著的速度提升。
关于在Hopper上使DeepSeek V4 Flash达到近200 tok/s的一些技巧
这篇博文提供了在双GH200工作站上使用vLLM对DeepSeek V4 Flash进行推理,达到近200令牌/秒的技巧和基准测试,重点介绍了使用Canada-Quant的量化检查点和张量并行优化。