资讯动态

TP vs PP

发布时间:2026/8/4 6:19:46 来源:尧图企业网站定制
在 GPU 大模型LLM分布式训练与推理中单个模型的参数量和中间激活值Activation往往远超单张显卡的显存容量如 H100 的 80GB。为了将百亿、千亿甚至万亿参数的模型放进集群张量并行Tensor Parallelism, TP和流水线并行Pipeline Parallelism, PP是最核心的两种模型并行Model Parallelism方案。一图看懂两者的拆分维度两者最本质的区别在于切分模型的维度不同TP张量并行横着切层内拆分。将模型中单个 Transformer 算子/矩阵乘法拆分到多卡上共同计算。PP流水线并行竖着切层间拆分。按网络层Layers将模型切分为多个阶段Stages不同卡负责不同的层。[ Original Model ] ┌──────────────────┐ │ Layer 3 (Layers) │ ───────┐ ├──────────────────┤ │ │ Layer 2 (Layers) │ ├─ PP按层切分到不同节点/卡 ├──────────────────┤ │ │ Layer 1 (Layers) │ ───────┘ └──────────────────┘ ▲ ▲ ▲ ▲ │ │ │ │ └─── TP ───┘ (TP在同一层内部按矩阵维度拆分到多卡)1. 张量并行Tensor Parallelism, TP核心原理TP 作用于 Transformer 内部的矩阵乘法如 Self-Attention 的QKVQKVQKV投影以及 MLP 层。以 Megatron-LM 的设计为例Column Parallel MLP列并行输入XXX复制发往所有卡。权重矩阵WWW按列切分到NNN张卡W[W1∣W2]W [W_1 \vert{} W_2]W[W1​∣W2​]。每张卡计算YiX⋅WiY_i X \cdot W_iYi​X⋅Wi​最后将结果拼接。Row Parallel MLP行并行输入XXX本身在每张卡上已经是切分好的X[X1∣X2]X [X_1 \vert{} X_2]X[X1​∣X2​]。权重矩阵WWW按行切分W[W1W2]W \begin{bmatrix} W_1 \\ W_2 \end{bmatrix}W[W1​W2​​]。每张卡计算YiXi⋅WiY_i X_i \cdot W_iYi​Xi​⋅Wi​最后通过All-Reduce将各卡结果相加得到最终输出YYY。典型组合MLP 层通常采用“列并行 行并行”的组合这样整个 MLP 块只需要在末尾进行一次 All-Reduce即可完成同步。特点与开销通信频率极高每一个 Transformer Layer 的前向和反向传播都需要进行多次跨卡通信All-Reduce / All-Gather。硬件要求极高由于通信频繁TP通常限制在单个节点Node内部的 NVLink / NVSwitch 高带宽互联网络下使用。越界到跨节点 PCIe/以太网通信会迅速成为严重瓶颈。气泡Bubble几乎无计算气泡显存与计算负载极其均匀。2. 流水线并行Pipeline Parallelism, PP核心原理当模型层数极多例如 80 层 Transformer单个节点的卡数不足以承载 TP 时就需要用到 PP分块把 80 层模型平均切分成 4 个 Stage每个 Stage 20 层放置在 4 台机器上。传递Stage 1 计算完第 1~20 层后将输出激活值Activation通过网络发送给 Stage 2Stage 2 接着算 21~40 层以此类推。流水线气泡Bubble与调度算法如果直接串行执行100% 顺序等待同一时刻只有一台机器在工作GPU 利用率极低。为了解决这个问题PP 引入了Micro-batch微批次调度策略把一个 Large Batch 拆分成多个 Micro-batches让不同 Stage 形成流水线并发1F1BOne Forward, One Backward在流水线建立Warmup阶段后每完成一次前向计算1 Forward紧接着做一次反向计算1 Backward。这种调度能严格控制中间激活值的显存占用是目前最常用的 PP 算法。特点与开销通信量小节点间只需要传递 Stage 边界处的激活值张量P2P 点对点通信通信数据量远小于 TP 的 All-Reduce。适合跨节点扩展因为 P2P 通信量小PP 非常适合用于跨节点Inter-node的集群扩展通过 InfiniBand 或 RoCE 互联。存在流水线气泡Pipeline Bubble在流水线刚开始和结束阶段部分 Stage 会处于等待状态闲置。Micro-batch 拆得越细气泡占比越小但显存开销和调度复杂度会增加。TP 与 PP 对比总结比较维度张量并行Tensor Parallelism, TP流水线并行Pipeline Parallelism, PP拆分粒度算子/矩阵层级单个 Layer 内部网络层级多个 Sequential Layers通信模式集合通信All-Reduce / All-Gather点对点通信P2P Activation Forwarding通信频次与带宽要求极高每层都需通信需 NVLink较低仅 Stage 边界通信可走 RDMA物理物理物理部署建议单节点内部Intra-node, 4/8 卡跨节点之间Inter-node负载均衡与气泡负载高度均衡无流水线气泡存在流水线气泡依靠 1F1B 等算法优化主要显存节省点均匀切分权重Weights与梯度按层切分权重与激活值生产环境中的典型组合3D Parallelism在实际的大模型训练如 Megatron-DeepSpeed中TP 和 PP 通常不会孤立使用而是与数据并行DP / Zero-DP结合构成3D 并行系统Total GPUsTP Size×PP Size×DP Size\text{Total GPUs} \text{TP Size} \times \text{PP Size} \times \text{DP Size}Total GPUsTP Size×PP Size×DP Size节点内Intra-node采用TP8 卡 NVLink 充分发挥高带宽优势。跨节点Inter-node采用PP降低跨机网卡的通信瓶颈。集群规模扩展外层采用DP / ZeRO扩展样本吞吐量。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价