0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

NVIDIA Blackwell GPU优化DeepSeek-R1性能 打破DeepSeek-R1在最小延迟场景中的性能纪录

NVIDIA英伟达企业解决方案 来源:NVIDIA 作者:NVIDIA 2025-07-02 19:31 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

近年来,大语言逻辑推理模型取得了显著进步,但也带来了新的部署挑战。其中,因复杂的“思考与逻辑推理”过程而引起的输出序列长度 (OSL) 的加长已成为一大难题。OSL 的加长提高了对 token 间延迟 (Token-to-Token Latency, TTL) 的要求,往往会引发并发限制。在最极端的情况下,实时应用会面临单并发(最小延迟场景)这一特别棘手的问题。

本文将探讨NVIDIATensorRT-LLM如何基于 8 个 NVIDIA Blackwell GPU 的配置,打破 DeepSeek-R1 在最小延迟场景中的性能纪录:在 GTC 2025 前将 67 token / 秒 (TPS) 的速度提升至 253 TPS(提速3.7 倍),而目前这一速度已达 368 TPS(提速5.5 倍)。

实现配置

一、工作负载配置文件

输入序列长度 (ISL):1000 token

输出序列长度 (OSL):2000 token

二、模型架构

DeepSeek-R1 的基础主模型包含:3 个密集层(初始)和 58 个 MoE 层,此外还有 1 个多 token 预测 (Multi-Tokens Prediction, MTP) 层(相当于 MoE 架构)用于推测性解码。我们的优化配置将 MTP 层扩展成 3 个层,采用自回归方法探索其最大性能。

0f5a9298-5736-11f0-baa5-92fbcf53809c.jpg

图1: DeepSeek-R1 的基础主模型

该图片来源于 Github: Pushing Latency Boundaries: Optimizing DeepSeek-R1 Performance on NVIDIA Blackwell GPUs 一文,若您有任何疑问或需要使用该图片,请联系该文作者

三、精度策略

我们探索出了一种能够更好平衡准确度与性能的混合精度方案。

0f896884-5736-11f0-baa5-92fbcf53809c.png

* TensorRT-LLM 已支持 FP8 Attention。但在该延迟场景下,低精度注意力计算并不能提升性能,因此我们为注意力模块选择了 BF16 精度。

** NVFP4 模型检查点由 NVIDIA TensorRT 模型优化器套件生成。

*** RouterGEMM 使用 BF16 输入 / 权重与 FP32 输出来确保数值的稳定性

四、并行策略


我们还在 8 个 Blackwell GPU 上尝试并引入了混合并行策略。具体而言,该延迟场景的最佳策略为 “TP8EP2”,其定义如下:

0f9d2d74-5736-11f0-baa5-92fbcf53809c.png

五、一图整合

现在,我们将所有内容整合成一张图,该图表示的是解码迭代中的一个 MoE 层。

0fb4860e-5736-11f0-baa5-92fbcf53809c.png

该图片来源于 Github: Pushing Latency Boundaries: Optimizing DeepSeek-R1 Performance on NVIDIA Blackwell GPUs 一文,若您有任何疑问或需要使用该图片,请联系该文作者

图中的模块包括:

  • 输入模块:一个形状为 [m, 7168] 的 BF16 张量,其中 m 表示 token 数量(例如使用 3 个 MTP 层时 m = 4),7168 为模型的隐藏大小。

  • 模块 1:Fuse_A_GEMM 拼接 WDQ、WDKV 和 WKR 的权重,以减少内核调用开销。

  • 模块 2:2 个 RMSNorm 对 Q / K 张量进行归一化。这些张量可以重叠在多个流上,也可以合并成单个分组 RMSNorm。

  • 模块 3:UQ_QR_GEMM 拼接 WUQ 和 WQR 的权重,以减少内核调用开销。

  • 模块 4:UK_BGEMM 在批量 GEMM 中使用 WUK。为防止权重规模膨胀和产生新的加载成本,我们未加入模块 3 和 4。

  • 模块 5:Concat KVCache & applyRope 合并 K / V 缓存并应用 ROPE(旋转位置编码)。

  • 模块 6:genAttention 在生成阶段执行 MLA,作用类似于 num_q_heads = 128 / TP8 = 16 的 MQA

  • 模块 7:UV_GEMM 执行带 WUV 权重的批量 GEMM。

  • 模块 8:WO_GEMM 使用 WO 权重运行密集 GEMM。为避免增加权重加载的开销,我们未加入模块 7 和 8。

  • 模块 9:融合内核将 oneshotAllReduce、Add_RMSNorm 和 DynamicQuant (BF16->NVFP4) 整合到单个内核中。

  • 模块 10:routerGEMM & topK 处理路由器 GEMM (Router GEMM) 和 topK 选择。

  • 模块 11:共享专家模型与模块 10 和模块 12 部分重叠。

  • 模块 12:稀疏专家模型通过分组 GEMM (Grouped GEMM) 实现专家层。

  • 模块 13:最终融合内核同时执行 localReduction、oneshotAllReduce 和 Add_RMSNorm 操作。

主要优化

0fc30292-5736-11f0-baa5-92fbcf53809c.png

0fdad5ac-5736-11f0-baa5-92fbcf53809c.png

一、系统级优化

1、CUDA Graph 与可编程依赖启动

CUDA Graph 对于克服小型工作负载中的 CPU 开销必不可少,而可编程依赖启动可进一步降低内核启动延迟。

2、MTP

基于 MTP 的两种优化措施:

1) 自回归 MTP 层

0ff175be-5736-11f0-baa5-92fbcf53809c.png

根据我们的研究结果,3x MTP 层的配置性能最佳。

2) 宽松接受验证

逻辑推理模型 (如 DeepSeek R1) 的生成过程可以分为两个阶段:思考阶段和实际输出阶段。在思考阶段,如果启用宽松接受 (Relax Acceptance) 模式,候选 token 处于候选集时即可被接受。该候选集基于 logits topN 和概率阈值生成。

  • topN:从 logits 中采样前 N 个 token。

  • 概率阈值:基于 topN 个候选 token,只有概率大于 Top1 的概率减去 delta 的 token 时可保留在候选集。

在非思考阶段,我们仍采用严格接受模式。

10048fbe-5736-11f0-baa5-92fbcf53809c.png

这是一种宽松的验证和比较方法,可以在对精度影响很小的情况下,提升接受率并带来加速。

1014eeb8-5736-11f0-baa5-92fbcf53809c.png

如需了解更多信息,请访问:

multi-token-prediction-mtp

3、多流

我们引入了基于多流的优化措施以隐藏部分内核的开销,例如:

  • 将共享专家模型与稀疏专家模型重叠

  • 将 Concat_KVCache 内核与 GEMM 重叠

稀疏专家模型作为 GEMM (仅当 moe_backend=CUTLASS 时有效)

102b7430-5736-11f0-baa5-92fbcf53809c.png

该图片来源于 Github: Pushing Latency Boundaries: Optimizing DeepSeek-R1 Performance on NVIDIA Blackwell GPUs 一文,若您有任何疑问或需要使用该图片,请联系该文作者

现有的基于 CUTLASS 的稀疏专家模型流(如图所示)将输入的 token 分发到指定的专家模型,然后在每个专家模型的输出上进行索引式的局部归约,最后进行全局AllReduce。分发和索引局部归约在低延迟场景下会产生高开销。为解决此问题,我们提出将“稀疏专家模型作为 GEMM”处理,即将所有 token 发送至每个激活的专家模型,并在局部归约前屏蔽不需要的输出。由于分组 GEMM 受显存限制,冗余 token 产生的额外计算开销几乎没有影响,有效避免了昂贵的分发,同时减少开销。

4、重新平衡稀疏专家模型

稀疏专家模型常用的并行化策略有两种:专家并行 (EP) 和张量并行 (TP)。专家并行 (EP) 将每个专家模型分配到独立的 GPU,以此实现高显存和计算效率。但 token 放置依赖于数据,导致 GPU 间工作负载分布不均,并在 MoE 模块后的 AllReduce 步骤中显示额外开销。张量并行 (TP) 将每个专家模型均匀划分到多个 GPU,虽平衡了工作负载,但却牺牲了数学 / 显存效率。

  • 混合 ETP

结合 EP / TP 的混合方法可缓解上述问题。实验结果表明,TP4EP2 配置在实际中表现最佳。

  • 智能路由器

另一方案是将所有专家模型权重存储在由 4 个 GPU 组成的集群中,随后将其复制到另一个 4 GPU 集群,智能路由器可将 token 动态地分配到各集群。该设计在不显著影响本地显存和计算效率的前提下,保持了工作负载分布的平衡。

二、内核级优化

1、注意力内核

我们开发了定制的 MLA 注意力内核,以便更好地使用 GPU 资源应对延迟场景。

2、分组 GEMM

  • CUTLASS 后端(默认后端)

我们的默认 MoE 后端基于 CUTLASS,该后端具有灵活性和稳定性,但可能不是最佳的性能方案。

  • TensorRT-LLM 后端

另一个 MoE 后端是 TensorRT-LLM,其性能更优。我们正在努力提高其灵活性和稳定性,未来将作为延迟场景中分组 GEMM 计算的默认后端。

3、通信内核

对于小规模消息,受常规 NCCL 延迟影响的 AllReduce 内核效率低下,为此我们开发了一款定制化的一次性 AllReduce 内核。该内核通过先模仿初始广播,然后进行局部归约的方式,利用 NVSwitch 的强大硬件能力在最小延迟场景中实现了更优的性能。

4、密集 GEMM 优化

我们重点优化两种密集 GEMM:Fuse_A_GEMM 和 RouterGEMM。因为这两种 GEMM 占据了大部分执行时间、显存效率低下且难以分片(两者均基于 DP)。

  • Fuse_A_GEMM

我们开发了一个定制的 Fuse_A_GEMM,通过将大部分权重预先载入到共享显存(通过 PDL 实现并与 oneshot-AllReduce 重叠),大幅提升了性能。当 num_tokens < 16 时,该内核性能较默认的 GEMM 实现有明显提升。

1138d674-5736-11f0-baa5-92fbcf53809c.png

该图片来源于 Github: Pushing Latency Boundaries: Optimizing DeepSeek-R1 Performance on NVIDIA Blackwell GPUs 一文,若您有任何疑问或需要使用该图片,请联系该文作者

  • RouterGEMM

我们通过使用内部的 AI 代码生成器,自动生成经过优化的 RouterGEMM 内核。在 num_tokens ≤ 30 时,该内核性能较默认的 GEMM 实现有显著提升。

114fab38-5736-11f0-baa5-92fbcf53809c.png

该图片来源于 Github: Pushing Latency Boundaries: Optimizing DeepSeek-R1 Performance on NVIDIA Blackwell GPUs 一文,若您有任何疑问或需要使用该图片,请联系该文作者

5、内核融合

为了减少最小延迟场景中额外的全局显存写读开销,内核融合必不可少。我们目前支持以下融合模式:

  • 将两个重叠的 RMS_Norm 融合成一个 GroupedRMSNorm

  • 将 (LocalReduction) + AR + RMS_Norm + (Dynamic_Quant_BF16toNVFP4) 融合成一个内核

  • 将 Grouped GEMM_FC1 + 点激活 (当 moe_backend=TRTLLM 时) 融合成一个内核

如何复现

https://github.com/NVIDIA/TensorRT-LLM/blob/main/docs/source/blogs/Best_perf_practice_on_DeepSeek-R1_in_TensorRT-LLM.md#b200-min-latency

需要注意的是,宽松接受模式是 Deepseek-R1 模型的特有模式。若要启用该模式,需在准备基准数据集时设置 add_generation_prompt = True,示例代码如下:

input_ids= tokenizer.encode(tokenizer.apply_chat_template(msg, tokenize=False, add_generation_prompt=True), add_special_tokens=False)

还需在 speculative_config 中设置 use_relaxed_acceptance_for_thinking: true, relaxed_topk: 10 和 relaxed_delta: 0.6。

后续工作

  • 增加融合

  • 增加重叠

  • 增加对注意力内核的优化

  • 增加对 MTP 的研究

结语

在延迟敏感型应用中突破 DeepSeek R1 的性能极限是一项非凡的工程。本文详细介绍的优化措施是整个 AI 技术栈各个领域的协作成果,涵盖了内核级优化、运行时增强、模型量化技术、算法改进以及系统性能分析与调优。希望本文介绍的技术和最佳实践,能够帮助开发者社区在任务关键型 LLM 推理应用中更充分地发挥 NVIDIA GPU 的性能。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • NVIDIA
    +关注

    关注

    14

    文章

    5682

    浏览量

    110102
  • gpu
    gpu
    +关注

    关注

    28

    文章

    5266

    浏览量

    136040
  • 大模型
    +关注

    关注

    2

    文章

    3753

    浏览量

    5268
  • LLM
    LLM
    +关注

    关注

    1

    文章

    350

    浏览量

    1394
  • DeepSeek
    +关注

    关注

    2

    文章

    837

    浏览量

    3395

原文标题:突破延迟极限:在 NVIDIA Blackwell GPU 上优化 DeepSeek-R1 的性能

文章出处:【微信号:NVIDIA-Enterprise,微信公众号:NVIDIA英伟达企业解决方案】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    百度腾讯抢滩布局!DeepSeek-R1升级和开源背后,国产AI的逆袭之路

    电子发烧友网报道(文/李弯弯)日前,DeepSeek官方宣布DeepSeek-R1模型已完成小版本试升级,当前版本为DeepSeek-R1-0528。次日,DeepSeek-R1-05
    的头像 发表于 06-03 06:34 6363次阅读

    NVIDIA RTX PRO 4000 Blackwell GPU性能测试

    Generation 的全面超越。那么,这款划时代的专业 GPU 真实应用场景的表现究竟如何?今天,我们将通过深度实测,为您揭晓 NVIDIA
    的头像 发表于 12-29 15:30 1810次阅读
    <b class='flag-5'>NVIDIA</b> RTX PRO 4000 <b class='flag-5'>Blackwell</b> <b class='flag-5'>GPU</b><b class='flag-5'>性能</b>测试

    DeepSeek R1 MTPTensorRT-LLM的实现与优化

    TensorRT-LLM NVIDIA Blackwell GPU 上创下了 DeepSeek-R1 推理
    的头像 发表于 08-30 15:47 4665次阅读
    <b class='flag-5'>DeepSeek</b> <b class='flag-5'>R1</b> MTP<b class='flag-5'>在</b>TensorRT-LLM<b class='flag-5'>中</b>的实现与<b class='flag-5'>优化</b>

    如何在NVIDIA Blackwell GPU优化DeepSeek R1吞吐量

    开源 DeepSeek R1 模型的创新架构包含多头潜在注意力机制 (MLA) 和大型稀疏混合专家模型 (MoE),其显著提升了大语言模型 (LLM) 的推理效率。
    的头像 发表于 08-12 15:19 4479次阅读
    如何在<b class='flag-5'>NVIDIA</b> <b class='flag-5'>Blackwell</b> <b class='flag-5'>GPU</b>上<b class='flag-5'>优化</b><b class='flag-5'>DeepSeek</b> <b class='flag-5'>R1</b>吞吐量

    速看!EASY-EAI教你离线部署Deepseek R1大模型

    和自然语言推理等复杂任务。作为国产AI大数据模型的代表,凭借其卓越的推理能力和高效的文本生成技术,全球人工智能领域引发广泛关注。本文主要说明DeepSeek-R1
    的头像 发表于 07-25 15:22 1564次阅读
    速看!EASY-EAI教你离线部署<b class='flag-5'>Deepseek</b> <b class='flag-5'>R1</b>大模型

    【「DeepSeek 核心技术揭秘」阅读体验】+混合专家

    感谢电子发烧友提供学习Deepseek核心技术这本书的机会。 读完《Deepseek核心技术揭秘》,我深受触动,对人工智能领域有了全新的认识。了解Deepseek-R1Deepseek
    发表于 07-22 22:14

    【「DeepSeek 核心技术揭秘」阅读体验】--全书概览

    讲解Deepseek的使用方法 第三章 深入剖析Deepseek-V3的模型架构、训练框架、推理阶段优化、后训练优化等关键技术 第四章关于Deep
    发表于 07-21 00:04

    【「DeepSeek 核心技术揭秘」阅读体验】书籍介绍+第一章读后心得

    DeepSeek-V3得到了优化升级。DeepSeek-V3的发布几乎没有预热和炒作,仅凭借其出色的效果和超低的成本迅速走红。 紧接着,
    发表于 07-17 11:59

    信而泰×DeepSeek:AI推理引擎驱动网络智能诊断迈向 “自愈”时代

    模态的技术特性,DeepSeek正加速推动AI金融、政务、科研及网络智能化等关键领域的深度应用。 信而泰:AI推理引擎赋能网络智能诊断新范式信而泰深度整合DeepSeek-R1大模型系统,构建了新一代
    发表于 07-16 15:29

    Arm Neoverse N2平台实现DeepSeek-R1满血版部署

    颇具优势。Arm 携手合作伙伴, Arm Neoverse N2 平台上使用开源推理框架 llama.cpp 实现 DeepSeek-R1 满血版的部署,目前已可提供线上服务。
    的头像 发表于 07-03 14:37 1416次阅读
    Arm Neoverse N2平台实现<b class='flag-5'>DeepSeek-R1</b>满血版部署

    【书籍评测活动NO.62】一本书读懂 DeepSeek 全家桶核心技术:DeepSeek 核心技术揭秘

    、语言一致性),优化模型在数学、编程等结构化任务的表现。 通用对齐RL:融入人类偏好奖励模型,确保模型开放域任务的安全性与实用性。 Deep
    发表于 06-09 14:38

    DeepSeek开源新版R1 媲美OpenAI o3

    ;还有一些网友的实测评价都显示, DeepSeek新版R1性能可以媲美OpenAI最新的o3模型高版本。妥妥的超高性价比的平替。 此外,关于DeepSeek
    的头像 发表于 05-29 11:23 1471次阅读

    DeepSeek 引领边缘 AI 芯片向更高性能、更低功耗、更强泛化能力的方向演进

    DeepSeek 系列模型概览 DeepSeek 系列包括大型语言模型(如 DeepSeek LLM、R1)及多模态模型(DeepSeek-
    的头像 发表于 05-09 10:27 2407次阅读

    SAP实施专家解答:如何用DeepSeek-R1实现需求沟通效率倍增

    工博科技分享AI工具链IT项目中的深度应用:通过DeepSeek-R1实现智能会议记录结构化(2小时会议5分钟生成决策表)和精准多语言文档翻译(错误率降低14%),帮助IT团队将重复性工作耗时减少
    的头像 发表于 04-28 09:13 812次阅读

    【幸狐Omni3576边缘计算套件试用体验】CPU部署DeekSeek-R1模型(1B和7B)

    优化:动态分配计算资源至关键token 中文优化Wudao Corpus等中文数据集上强化训练 技术突破: 相比传统LLM,DeepSeek-R1通过以下创新实现低资源部署: Mo
    发表于 04-21 00:39