Civilization Museum
The Dark Forest
目录
0%
概述
GPU操作
reduce操作
Broadcast
AllGather
ReduceScatter
AllReduce
通信
数据并行化
数据并行(PyTorch DP)
工作流程
代码
分布式数据并行(PyTorch DDP)
原理
Ring-AllReduce
代码
优缺点
优点
缺点
DP 与 DDP 的区别
张量并行
原理
工作流程
按列分片
按行分片
多维张量
2D张量并行
2.5D 张量并行
3D张量并行
Transformer划分
MLP
多头注意力
流水线并行
原理
微批次流水线
流水线并行策略
F-then-B 策略
F1B1策略
相关技术
GPipe:微批次流水线
PipeDream:1F1B 调度与权重版本化
序列并行
Ring Attention工作流程
概述
前向传播
Ulysses工作流程
Dropout、LayerNorm
专家并行(Expert Parallel, EP)
零冗余并行(Zero)
问题与挑战
概述
原理
ZeRO Stage 1:优化器状态分片(基础)
ZeRO Stage 2:优化器状态 + 梯度分片(平衡,最常用)
ZeRO Stage 3:全状态分片(极致省显存)
通信量分析
标准 数据并行 通信量分析
Zero1通信量分析
Zero2通信量分析
Zero3通信量分析
ZeRO-Offload
运行流程
多维度并行
常见分布式并行技术
数据并行(DP)+ 流水线并行(PP)
数据并行(DP)+ 流水线并行(PP)+ 张量并行(TP)
数据并行(DP)+ 流水线并行(PP)+ 张量并行(TP)+zero
业内并行技术
CodeGeeX-13B
完整数据流
参数计算
GPT-NeoX(20B)
并行方案
通信
GLM(130B)
硬件条件
参数量计算
并行方案
OPT(175B)
并行化
Megatron-Turing NLG(530B)
概述
并行方案
代码实战
deepseed
PyTorch FSDP
0%