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

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

3天内不再提示

大规模专家并行模型在TensorRT-LLM的设计

NVIDIA英伟达企业解决方案 来源:NVIDIA英伟达企业解决方案 2025-09-06 15:21 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

DeepSeek-V3 / R1 等模型采用大规模细粒度混合专家模型 (MoE) 架构,大幅提升了开源模型的质量。Llama 4 和 Qwen3 等新发布的开源模型的设计原则也采用了类似的大规模细粒度 MoE 架构。但大规模 MoE 模型为推理系统带来了新的挑战,如高显存需求和专家间负载失衡等。

之前,我们介绍过突破 DeepSeek R1 模型低延迟极限的 TensorRT-LLM 优化措施,多 Token 预测 (MTP) 的实现与优化以及提高 DeepSeek R1 吞吐量性能的优化措施。

DeepSeek 团队还分享了优化此类大规模专家并行 (EP) 模型 (如 DeepEP 和 EPLB) 的宝贵经验与实践。此外,DeepSeek 团队在这份[1]技术报告中详细阐述了具体设计考虑因素。除此之外,社区中也有在其他推理引擎中实现大规模 EP 的优秀实践,例如 SGLang 团队的这个项目[2]。

这篇技术博客共分为上中下三篇,将介绍支持 TensorRT-LLM 中端到端大规模 EP 的详细设计与实现,主要包含以下内容:

如何使用 NVIDIA 多节点 NVLink (MNNVL) 硬件特性来实现高性能通信内核。

如何设计和实现在线专家负载均衡器,以动态平衡专家负载分布并适应在线流量模式的变化。我们将展示:

证明此类优化措施必要性的经验数据分析。

在线流量数据统计模块的实现。

复制和放置策略的设计与实现。

用于平衡多个 GPU 间在线工作负载的 MoE 权重负载和重新分配器。

为适应专家负载均衡器需求而对 MoE 路由器和计算模块进行的必要修改。

一些证明当前 TensorRT-LLM 中实现效果的初步数据。

未来的技术博客还将涵盖以下主题:

对 TensorRT-LLM 大规模 EP 实现的性能调优和优化的介绍。

如何在不使用 MNNVL 的情况下,为 Hopper 和其他 NVIDIA GPU 实现高效的大规模 EP 支持。

使用大规模 EP 并获得性能提升的最佳实践。

如何将大规模 EP 与其他系统优化技术相结合。

虽然本技术博客主要讨论 TensorRT-LLM,但我们相信其核心理念和实现方法也可用于其他推理引擎在 NVIDIA GPU 上的推理性能。此外,我们希望借助社区的力量,探索如何更好地将当前 TensorRT-LLM 大规模 EP 实现模块化,使其更容易被社区复用。

最后,本博客包含针对 Grace Blackwell 机架式系统的详细实现方式,例如使用 Grace Blackwell 机架式系统跨 GPU 连接的通信组件,以及使用 Grace CPU 与 Blackwell GPU 间高带宽 C2C 连接的 MoE 权重加载和重新分配模块等。但整体设计原则和软件架构仍适用于非此 NVIDIA GPU 系统。为了便于扩展到其他非此系统,我们有意识地关注了设计和实现的通用性。这些更改应能与现有其他组件轻松组合。

引入大规模 EP 的初衷

引入大规模 EP(本文中指 EP > 8)主要基于以下系统考量:

我们希望通过提高聚合显存带宽来加载专家权重,从而降低执行延迟。

我们希望通过增加有效批处理大小充分利用 GPU 算力。

需注意,当端到端 (E2E) 执行时间主要由 MoE GroupGEMM 计算主导时,引入大规模 EP 可显著提升性能。但若端到端执行时间未被 MoE GroupGEMM 计算主导,引入大规模 EP 提升的性能有限。

系统设计中不存在“免费的午餐”。当 EP 规模增大到超过 8(有时甚至不到 8)时,由于 MoE 模型的稀疏执行特性,会自动触发 EP 级别的负载失衡问题。

以下是一些基于特定数据集的经验观察(所有分析均使用DeepSeek R1 模型在32 个 GPU上进行):

对一个机器翻译数据集的观察结果

首先,我们将概述各层的整体失衡问题:

9ea3c276-8977-11f0-8c8f-92fbcf53809c.png

图 1. 从 rank 0 发送到所有 rank(包括 rank 0)的 Token 数(对应解码迭代 1950)及所有 MoE 层

如图 1 所示,在第 36 层的 MoE 中,从rank 0 发送到 rank 13的 Token 数明显更多。

如果我们放大第 36 层的 MoE 并记录其激活专家 rank 的分布,可以清楚地看到有一个 rank 被更频繁地激活:

9f0c0b1a-8977-11f0-8c8f-92fbcf53809c.png

图 2. 第 36 层每个专家 rank 接收的 Token 数量

如果我们将数据展平以查看每个专家接收的 Token 数量,可以发现有一些专家比其他专家更活跃:

9f6bc136-8977-11f0-8c8f-92fbcf53809c.png

图 3. 第 36 层每个专家接收的 Token 数量

值得注意的是,这种失衡问题在多次迭代中非常稳定,如下图所示:

9fcd0766-8977-11f0-8c8f-92fbcf53809c.png

图 4. 第 36 层每个专家在 50 个解码步骤内接收的 Token 总数,本地 batch size=256。

显然,图 4 中的热门专家与图 3 中仅包含单次解码迭代数据的专家相同。我们还对本地 batch size=1(对应单次请求)进行了基于持续时间的分析,观察到类似的模式:

a03ed12a-8977-11f0-8c8f-92fbcf53809c.png

图 5. 第 36 层每个专家在 400 次解码迭代内接收的 Token 总数,本地 batch size=1。

综上所述,针对该机器翻译数据集的研究结果可总结为:

某些层中存在一些热点,部分 EP 所在 GPU 的负载可能远高于其他 EP。

其原因可能是最热门专家或多个热门专家位于同一 rank。

路由 Token 的分布可能在数十至数百个迭代步骤甚至更多迭代步骤内保持一致。

在单个请求的执行中,不同迭代步之间也存在相同的热门专家。

另一个实际问题是上述观察结果在其他数据集上是否会发生显著变化。因此,我们对 GSM8K 数据集进行了类似的分析。

对 GSM8K 数据集的观察结果

a0a5bfb6-8977-11f0-8c8f-92fbcf53809c.png

图 6. 从 rank 0 发送到所有 rank 的 Token 数(对应第 1950 个迭代步)及所有 MoE 层

如图 6 所示,与图 1 相比,GSM8K 数据集中的热门层变成了第 57 层而非第 36 层。那么 GSM8K 数据集中第 36 层的具体情况如何?

a1076bd0-8977-11f0-8c8f-92fbcf53809c.png

图 7. 从 EP rank 0 发送到其他 EP rank 的 Token 数(仍以迭代 1950、MoE 第 36 层为例)

从图 7 可以清楚地看到,工作负载失衡于不同数据集(图 2 所示)中观察到的情况不同。在图 8 中可以观察到在 GSM8K 数据集上,工作负载的失衡在多次迭代中也相对稳定。这与之前的机器翻译数据集相同。

a1809bf4-8977-11f0-8c8f-92fbcf53809c.png

图 8. 从 EP rank 0 发送到所有 rank 的 Token 总数(MoE 第 57 层,50 个解码步骤内,本地 batch size=256)

如果我们将每个 GPU EP 层面的数据展平为专家层面,可以得到下图。

a1e3eccc-8977-11f0-8c8f-92fbcf53809c.png

图 9. 第 57 层的每个专家在 50 个解码步骤内接收的 Token 总数,本地 batch size=256

单个请求中也存在类似的失衡模式。

a249b7e6-8977-11f0-8c8f-92fbcf53809c.png

图 10. 单次请求下第 57 层的每个专家在 400 个解码步骤内接收的 Token 总数

如果使用另一个请求,我们仍然可以观察到专家失衡问题。虽然热门专家可能不同,但有一些是共同的(在此示例中是专家 10)。

a2bf6f68-8977-11f0-8c8f-92fbcf53809c.png

图 11. 单次请求下第 57 层每个专家在 400 个解码步骤内接收的 Token 总数

通过对两个数据集的数据分析,我们得出以下结论:

EP 级别工作负载失衡问题在多个数据集的大规模 EP 推理中较为常见。且 EP 失衡的严重程度可能因层而异。此外,EP 失衡的问题具有数据集敏感性。

EP rank 级别失衡问题可能由某个最热门的专家或多个热门专家长期占据同一 EP rank 引起。

EP rank 失衡分布在数十到数百次迭代中相对稳定。

尽管 EP rank 失衡分布在时间维度上具有稳定性,但不同请求的 EP 失衡分布可能有所不同。

这些发现可指导我们对 TensorRT-LLM 大规模 EP 实现的设计考量:

设计时需考虑 EP 失衡问题以确保端到端的性能。

基于实时在线请求流量的在线 EP 负载均衡器(而非仅实现离线 EP 负载均衡器)对确保 EP 均衡器的稳健性至关重要。

可运用 EP rank 失衡分布的时间维度稳定性,以高效的方式将 MoE 权重重新分配至不同 EP rank。

在下一篇文章中,我们将深入探讨 TensorRT-LLM 大规模 EP 的整体实现架构、负载均衡策略与性能优化实践。

引用

[1]DeepSeek-V3 技术报告:

https://arxiv.org/abs/2412.19437

[2]SGLang团队项目:

https://lmsys.org/blog/2025-05-05-large-scale-ep/

作者

杨东旭

现任职于 NVIDIA Compute Arch 部门。主要负责 LLM 推理系统的开发和性能优化。加入 NVIDIA 之前,曾从事搜索系统的 GPU 加速和开发工作。

乔显杰

NVIDIA Compute Arch 部门高级架构师,主要负责 LLM 推理的性能评估和优化。加入 NVIDIA 之前,他曾从事推荐系统的 GPU 加速研发工作。

谢开宇

NVIDIA Compute Arch 部门高级架构师,主要负责 TensorRT-LLM 项目的开发,专注在系统性能和优化工作。

朱恩伟

NVIDIA DevTech 部门高级工程师,主要负责 TensorRT-LLM 项目的开发和性能优化。

陈晓明

NVIDIA Compute Arch 部门的首席架构师和高级经理,对深度学习模型的算法软硬件协同设计感兴趣,最近从事大语言模型推理的性能建模、分析和优化。

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

    关注

    28

    文章

    5100

    浏览量

    134473
  • 模型
    +关注

    关注

    1

    文章

    3649

    浏览量

    51719
  • DeepSeek
    +关注

    关注

    2

    文章

    824

    浏览量

    2819

原文标题:大规模专家并行 (EP) 在 TensorRT-LLM 的设计动机与系统分析

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

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    DeepSeek R1 MTPTensorRT-LLM中的实现与优化

    。我们之前的博客[1] 中介绍了 DeepSeek-R1 模型实现超低推理延迟的关键优化措施。本文将深入探讨 TensorRT-LLM 中的 MTP 实现与优化。
    的头像 发表于 08-30 15:47 3970次阅读
    DeepSeek R1 MTP<b class='flag-5'>在</b><b class='flag-5'>TensorRT-LLM</b>中的实现与优化

    TensorRT-LLM初探(一)运行llama

    TensorRT-LLM正式出来有半个月了,一直没有时间玩,周末趁着有时间跑一下。
    的头像 发表于 11-16 17:39 2140次阅读
    <b class='flag-5'>TensorRT-LLM</b>初探(一)运行llama

    使用NVIDIA Triton和TensorRT-LLM部署TTS应用的最佳实践

    针对基于 Diffusion 和 LLM 类别的 TTS 模型,NVIDIA Triton 和 TensorRT-LLM 方案能显著提升推理速度。单张 NVIDIA Ada Love
    的头像 发表于 06-12 15:37 1306次阅读
    使用NVIDIA Triton和<b class='flag-5'>TensorRT-LLM</b>部署TTS应用的最佳实践

    如何在魔搭社区使用TensorRT-LLM加速优化Qwen3系列模型推理部署

    TensorRT-LLM 作为 NVIDIA 专为 LLM 推理部署加速优化的开源库,可帮助开发者快速利用最新 LLM 完成应用原型验证与产品部署。
    的头像 发表于 07-04 14:38 1760次阅读

    TensorRT-LLM中的分离式服务

    之前的技术博客中,我们介绍了低延迟[1] 和高吞吐[2] 场景的优化方法。对于生产部署,用户还关心满足特定延迟约束的情况下,每个 GPU 的吞吐表现。本文将围绕“吞吐量-延迟”性能场景,介绍 TensorRT-LLM 分离式
    的头像 发表于 08-27 12:29 1385次阅读
    <b class='flag-5'>TensorRT-LLM</b>中的分离式服务

    现已公开发布!欢迎使用 NVIDIA TensorRT-LLM 优化大语言模型推理

    能。该开源程序库现已作为 NVIDIA NeMo 框架的一部分, /NVIDIA/TensorRT-LLM GitHub 资源库中免费提供。 大语言模型彻底改变了人工智能领域,并创造了与数字世界交互
    的头像 发表于 10-27 20:05 1821次阅读
    现已公开发布!欢迎使用 NVIDIA <b class='flag-5'>TensorRT-LLM</b> 优化大语言<b class='flag-5'>模型</b>推理

    点亮未来:TensorRT-LLM 更新加速 AI 推理性能,支持 RTX 驱动的 Windows PC 上运行新模型

    微软 Ignite 2023 技术大会发布的新工具和资源包括 OpenAI Chat API 的 TensorRT-LLM 封装接口、RTX 驱动的性能改进 DirectML for Llama 2
    的头像 发表于 11-16 21:15 1273次阅读
    点亮未来:<b class='flag-5'>TensorRT-LLM</b> 更新加速 AI 推理性能,支持<b class='flag-5'>在</b> RTX 驱动的 Windows PC 上运行新<b class='flag-5'>模型</b>

    NVIDIA加速微软最新的Phi-3 Mini开源语言模型

    NVIDIA 宣布使用 NVIDIA TensorRT-LLM 加速微软最新的 Phi-3 Mini 开源语言模型TensorRT-LLM 是一个开源库,用于优化从 PC 到云端的 NVIDIA GPU 上运行的大语言
    的头像 发表于 04-28 10:36 1495次阅读

    魔搭社区借助NVIDIA TensorRT-LLM提升LLM推理效率

    “魔搭社区是中国最具影响力的模型开源社区,致力给开发者提供模型即服务的体验。魔搭社区利用NVIDIA TensorRT-LLM,大大提高了大语言模型的推理性能,方便了
    的头像 发表于 08-23 15:48 1578次阅读

    TensorRT-LLM低精度推理优化

    本文将分享 TensorRT-LLM 中低精度量化内容,并从精度和速度角度对比 FP8 与 INT8。首先介绍性能,包括速度和精度。其次,介绍量化工具 NVIDIA TensorRT Model
    的头像 发表于 11-19 14:29 2265次阅读
    <b class='flag-5'>TensorRT-LLM</b>低精度推理优化

    NVIDIA TensorRT-LLM Roadmap现已在GitHub上公开发布

    感谢众多用户及合作伙伴一直以来对NVIDIA TensorRT-LLM的支持。TensorRT-LLM 的 Roadmap 现已在 GitHub 上公开发布!
    的头像 发表于 11-28 10:43 1177次阅读
    NVIDIA <b class='flag-5'>TensorRT-LLM</b> Roadmap现已在GitHub上公开发布

    解锁NVIDIA TensorRT-LLM的卓越性能

    NVIDIA TensorRT-LLM 是一个专为优化大语言模型 (LLM) 推理而设计的库。它提供了多种先进的优化技术,包括自定义 Attention Kernel、Inflight
    的头像 发表于 12-17 17:47 1612次阅读

    NVIDIA TensorRT-LLM中启用ReDrafter的一些变化

    Recurrent Drafting (简称 ReDrafter) 是苹果公司为大语言模型 (LLM) 推理开发并开源的一种新型推测解码技术,该技术现在可与 NVIDIA TensorRT-LLM 一起使用。
    的头像 发表于 12-25 17:31 1242次阅读
    <b class='flag-5'>在</b>NVIDIA <b class='flag-5'>TensorRT-LLM</b>中启用ReDrafter的一些变化

    TensorRT-LLM大规模专家并行架构设计

    之前文章已介绍引入大规模 EP 的初衷,本篇将继续深入介绍 TensorRT-LLM大规模专家并行架构设计与创新实现。
    的头像 发表于 09-23 14:42 711次阅读
    <b class='flag-5'>TensorRT-LLM</b>的<b class='flag-5'>大规模</b><b class='flag-5'>专家</b><b class='flag-5'>并行</b>架构设计

    NVIDIA TensorRT LLM 1.0推理框架正式上线

    TensorRT LLM 作为 NVIDIA 为大规模 LLM 推理打造的推理框架,核心目标是突破 NVIDIA 平台上的推理性能瓶颈。为实现这一目标,其构建了多维度的核心实现路径:一
    的头像 发表于 10-21 11:04 770次阅读