当前位置: 首页 > news >正文

# MoE 推理优化:Mixtral 8×7B 在昇腾上的吞吐提升 4 倍

摘要Mixtral 8×7B 部署到 910B 4 卡吞吐 180 TPS。客户说 GPU 上能到 1200 TPS差了 6 倍。跑 msprof 一看MoE Router AllReduce 占 42% 时间。MoEMixture of Experts模型的推理瓶颈不在计算在通信和调度。Router 动态路由 Expert 通信开销吃掉 40% 时间。优化后吞吐从 180 提到 720 TPS涨了 4 倍。MoE 推理瓶颈分析MoE 的核心结构输入 x ↓ Router选择 top-k expert ↓ Expert 1, Expert 2, ..., Expert n只激活 top-k 个 ↓ 加权求和 ↓ 输出 yMixtral 8×7B8 个 expert每次激活 top-2。瓶颈拆解阶段耗时占比问题RouterGating TopK18%动态路由开销Expert 计算35%8 个 expert 并行度不足AllReduce 通信24%Expert 间通信带宽利用率低其他23%-Router AllReduce 占 42% 时间这才是 MoE 推理慢的根本原因。工程经验很多人以为 MoE 慢是因为 expert 多、计算量大。其实 MoE 每次只激活 top-k 个 expert计算量比同等参数的 Dense 模型还小。真正的瓶颈是 Router 动态路由和 Expert 间通信。GatingTopK 算子融合Router 的计算流程1. Gatingx W_gate → gate_score每个 token 对 8 个 expert 的得分 2. TopK从 8 个得分中选 top-2 3. Softmax对 top-2 得分做 softmax得到权重不融合的实现Gating 输出 → 写 HBM → TopK 读 HBM → 写 HBM → Softmax 读 HBM3 次 HBM 读写开销 36μs每次 12μs。融合后的实现Gating 输出 → L1 → TopK → L1 → Softmax中间结果走 L1不落 HBM。省掉 2 次 HBM 读写开销降到 12μs。ops-transformer 的 GatingTopK 算子fromops_transformerimportGatingTopK gating_topkGatingTopK(num_experts8,top_k2,fusion_modefull# Gating TopK Softmax 全融合)# 融合计算expert_ids,expert_weightsgating_topk(x,W_gate)性能收益模型融合前 Router 耗时融合后 Router 耗时节省Mixtral 8×7B18μs/层6μs/层12μs/层32 层总计576μs192μs384μs工程经验GatingTopK 融合前Router 输出要写 HBM 再给 TopK 读。融合后直接 L1 传数据省一次 HBM 读写。单层省 12μs32 层省 384μs。decode 每个 token 快 0.38ms1000 个 token 差 0.38 秒。Expert 并行策略MoE 模型有两种并行策略Tensor ParallelTP和 Expert ParallelEP。Tensor ParallelTP把每个 expert 的权重切分到多卡每卡算一部分。Expert 1: 卡1 算 1/2卡2 算 1/2AllReduce 合并 Expert 2: 卡1 算 1/2卡2 算 1/2AllReduce 合并 ...Expert ParallelEP每个卡放完整的 expert不同卡算不同 expert。卡1: Expert 1, Expert 2 卡2: Expert 3, Expert 4 卡3: Expert 5, Expert 6 卡4: Expert 7, Expert 8对比策略通信模式适用场景TPAllReduce每个 expert 都要Expert 数量少、单 expert 大EPAll-to-All激活的 expert 通信Expert 数量多、单 expert 小Mixtral 8×7B8 个 expert每个 expert 7B 参数。EP 更优。实测数据Mixtral 8×7B910B 4 卡并行策略吞吐 (TPS)通信开销TP42028%EP57018%混合TP2, EP261015%混合策略最优TP2每个 expert 切 2 份EP2每卡放 4 个 expert。工程经验MoE 场景下 EP 比 TP 快 35%。原因TP 每个 expert 都要 AllReduceEP 只在激活的 expert 之间通信。Mixtral 每次只激活 2 个 expert通信量比 TP 小。HCCL 通信优化HCCL 是昇腾的集合通信库对标 NCCL。AllReduce 带宽利用率对比库带宽利用率吞吐 (TPS)HCCL 默认配置45%420HCCL 优化后89%720优化点1. 算法选择HCCL 支持多种 AllReduce 算法Ring、Mesh、NHRNon-hierarchical Ring。小数据量 1MBMesh 最快 中数据量1MB-100MBNHR 最快 大数据量 100MBRing 最快MoE 的 AllReduce 数据量通常 10-50MB选 NHR。配置方式importhccl hccl.set_allreduce_algorithm(NHR)2. 通信与计算重叠Expert 计算和 AllReduce 通信并行Expert 1 计算 → Expert 2 计算 → AllReduceExpert 1 Expert 3 计算 → AllReduceExpert 2Expert 2 计算时Expert 1 的结果已经在 AllReduce。实现方式# 开启通信与计算重叠hccl.enable_overlap(True)3. 梯度压缩用于训练AllReduce 前梯度 FP16→FP8通信量减半。hccl.set_quantization(fp8)工程经验HCCL 默认配置下 AllReduce 带宽利用率只有 45%。改成 NHR 算法 通信计算重叠后利用率拉到 89%。吞吐从 420 TPS 涨到 720 TPS。动态路由的负载均衡MoE 的动态路由会导致负载不均某些 expert 激活频繁某些 expert 空闲。问题场景Expert 1: 激活 45% 的 token Expert 2: 激活 35% 的 token Expert 3: 激活 15% 的 token Expert 4: 激活 5% 的 token ...Expert 1 忙死Expert 4 闲死。最忙的 expert 决定整体吞吐。解决动态 batch把 batch 内的 token 按 expert 分组每组单独处理Batch32, seq2048 → 65536 tokens ↓ 按激活的 expert 分组 Expert 1: 29500 tokens Expert 2: 22900 tokens Expert 3: 9800 tokens Expert 4: 3300 tokens ... ↓ 每个 expert 独立处理实现方式fromops_transformerimportMoEDynamicBatch moe_batchMoEDynamicBatch(num_experts8,top_k2,capacity_factor1.25# 允许 25% 的容量冗余)# 动态 batch 处理outputmoe_batch(x,experts,router_output)性能收益策略吞吐 (TPS)Expert 空闲率静态 batch57023%动态 batch720 5%动态 batch 把 Expert 空闲率从 23% 压到 5%吞吐涨 26%。完整优化路径优化项吞吐 (TPS)累计提升基线180-GatingTopK 融合22022%EP 并行策略420133%HCCL 优化720300%动态 batch780333%最终吞吐180→780 TPS涨了 4.3 倍。踩坑实录坑 1TP 并行在 MoE 场景慢TP 每个 expert 都要 AllReduce通信开销大。MoE 场景用 EP 或混合并行。坑 2Router 输出不融合开销大Router 输出写 HBM 再给 TopK 读开销 12μs/层。融合后降到 6μs/层。坑 3Expert 激活不均有空闲动态路由导致某些 expert 忙死、某些闲死。用动态 batch 解决。坑 4HCCL 默认配置带宽利用率低默认配置下 AllReduce 带宽利用率 45%。改成 NHR 算法 通信计算重叠后拉到 89%。https://atomgit.com/cann/ops-transformerhttps://atomgit.com/cann/hcclhttps://atomgit.com/cann/cann-recipes-infer
http://www.gsyq.cn/news/1353667.html

相关文章:

  • 开发国际营销短信接口
  • PLC模组选型避坑指南:三大核心痛点与2026最新解决方案(附OFDM+双模实战指标)
  • 2026深圳市最新黄金 白银 铂金 彩金回收收门店实力排行榜及联系方式推荐 - 大熊猫898989
  • 2026年压片机品牌口碑推荐,连续式装盒机/大型压片机/洗碗块压片机/智能全自动装盒机,压片机直销厂家哪家好 - 品牌推荐师
  • 远程办公时代,如何防止公司机密被截屏泄露?
  • 移动端测试的核心技能:掌握这3个方法,搞定APP测试
  • 基于 Python + LangChain + React 的 AI 流式对话与历史存储实战
  • Deepseek-V4-Flash 高效能应用场景实战指南
  • 企业解决方案十五-录音文件转写声纹注册与声纹分离发音人解决方案
  • 2026年Jupyter期货研究接实盘:主流量化平台环境衔接对比
  • 那个被Temu查重复铺货的夜晚,我用凌风10分钟救回了三个店[特殊字符]
  • 游戏服务器宕机了怎么快速恢复?
  • 视力防控系统避坑指南:三步拆解“伪需求”技术架构的底层逻辑
  • AI时代如何精准识人?大客户销售话术与沟通,AI赋能销售成交铁军的专业销售技巧成交赢单培训老师
  • UHF-RFID多普勒运动检测技术解析与应用
  • SMMU事务属性转换机制与调试实践
  • 2026黄冈市最新黄金 白银 铂金 彩金回收收门店实力排行榜及联系方式推荐 - 大熊猫898989
  • 随机短文分享
  • 推荐具备DPIA协同验证能力的代码审计服务公司:如何甄选真正的技术合规整合者
  • 前端html字体包体积压缩,网站工程下字体压缩裁剪工具
  • 2026 大模型企业画像梳理技术解析:混乱画像规范方法深度测评
  • STM32单片机学习(16) —— 中断相关概念
  • 为什么越来越多公司坚持做背调?
  • 想做书单视频但不会剪?我试了扣子原生插件,拖进去直接生成铅笔画效果。
  • VMware安装Linux系统笔记
  • 2026惠州市最新黄金 白银 铂金 彩金回收收门店实力排行榜及联系方式推荐 - 大熊猫898989
  • 海思Hi3516CV608×PSRAM|AI全彩IPC黄金硬件方案
  • 大模型写论文,“文献”全是瞎编的?为什么大模型爱编参考文献?如何确保文献的真实性
  • 太阳模拟器设计:氙灯/金卤素灯/LED光源选型与光学系统均匀性分析
  • 2026德阳市最新黄金 白银 铂金 彩金回收收门店实力排行榜及联系方式推荐 - 大熊猫898989