725 字
4 分钟
DeepSeek-V4 并行策略:重叠计算与通信

MoE 的通信瓶颈#

MoE 的 MFU 下降不能只归因于 expert 规模小。分布式 GPU 通信也是主要瓶颈,需要通过并行布局和计算、通信重叠来缓解。

硬件与继承架构#

组件规格
集群H800 / Ascend,8 卡 NVLink + 跨节点 IB
NVLink900 GB/s
IB 互联仅 50 GB/s
高端设备未使用 NVL72(方案低成本、可复制)

V4 继承 DeepSeek-V3 栈,2048 H800 配置:

PP=16 × EP=64 × ZeRO-1 DP
EP 跨节点流量占用 IB 带宽

通用 GPU 并行模式速查#

模式描述通信量适用范围
DP每 GPU 全量参数,只切数据低(梯度同步)任意
ZeRO-1/2/3分片显存,逐级增加通信ZeRO-1≈零额外 / ZeRO-3 高IB
TP张量切分 + 计算切分极高NVLink 内
PP层流水线极低跨节点
EPMoE 专属,all-to-all token 路由高IB
CP序列切分(1M 长上下文)中特殊场景

多并行组合逻辑#

所有并行维度正交,可叠加使用。

EP 特殊机制:与 DP 同址(co-locate),在 forward pass 内部重新路由 token。

DeepSeek 布局:

PP = 16
EP = 64
DP_total = 128
DP_replica = 2 ← 全局仅 2 个完整模型副本

EP 对 IB 网络的优化#

EP 流程:Dispatch → Expert Compute → Combine

版本策略效果
V3限制 8 experts 在 4 节点内减少 IB 压力,但效率受限
V4取消节点限制更高效率,集中 IB 流量用 NVLink 转节点内数据,降低延迟,更易 overlap

为什么只用 PP + EP + ZeRO-1#

IB 带宽专门留给 EP ⭐
ZeRO-2/3 → 额外频繁 IB 通信,与 EP 冲突 ❌
ZeRO-1 → 近乎零额外通信,节省 ~12x 显存 ✅
PP → 极低流量,不争抢 IB 带宽 ✅

Pipeline Bubble 与 DualPipe#

方案思路问题
GPipe / 1F1B经典流水线存在 bubble(空闲等待)
ZB1P拆分 backward 计算挤压 bubble有限改进
DualPipe (V3)双向 micro-batch 流水线forward/backward 重叠,隐藏 EP all-to-all 延迟

DualPipe 关键实现: 专门划出 20 个 SM 用于定制 PTX 通信 kernel,绕过 NCCL。

Waved-EP:V4 核级升级#

Waved-EP 在 kernel 内实现通信与计算重叠,不依赖 PP 调度。

对比维度DualPipeWaved-EP
依赖PP 调度无依赖,kernel 级别
适用 batch仅大 batch大小 batch 均适用
RL 场景差1.96x 加速
通用场景—1.50~1.73x 加速

核心思想:将 experts 拆成多波(waves),dispatch / compute / combine 交替重叠。

TileLang vs Triton#

Waved-EP 使用 TileLang 实现跨 GPU 通信与计算融合,对底层调度的控制要求较高。

特性TritonTileLang
定位单 GPU kernel 优化DSL 生产力 + PTX/CUDA 底层控制
跨 GPU 通信❌ 弱✅ 强
融合计算-通信❌✅ 可构建 mega-kernel

两种优化方向#

两条硬件路线:

  • DeepSeek:通过计算与通信重叠,提高现有带宽的利用率
  • NVIDIA:扩大 NVLink 互联,统一大规模 GPU

DeepSeek 的方案说明,并行布局、通信调度和 kernel 融合可以共同降低大规模训练成本。

DeepSeek-V4 并行策略:重叠计算与通信
https://blog.lpkt.cn/posts/concepts/deepseek-v4-parallel-strategy/
作者
lollipopkit
发布于
2026-05-06
许可协议
CC BY-NC-SA 4.0