29.1.2 并行实现:TP / PP / EP / CP 与分布式优化器#
第 19 章讲清了张量并行、流水线并行、ZeRO 等并行策略为什么这样切,本页则对照 Megatron-Core 源码剖析它们在代码里落成了什么,张量并行是ColumnParallelLinear/RowParallelLinear一对共轭的torch.autograd.Function(一方前向不通信、反向 all-reduce,另一方前向 all-reduce、反向不通信),流水线并行是schedules.py里由num_warmup_microbatches驱动的 1F1B 与交错调度,专家并行是token_dispatcher.py的两次 all-to-all,上下文并行是把序列维按 zigzag 切给各 CP rank,分布式优化器则把优化器状态按 DP rank 切成 $1/N$ 分片。