Skip to content

分布式训练参考资料

通信原语

  • AllReduce: 所有进程归约并广播 (Sum/Max/Min)
  • AllGather: 所有进程数据收集
  • ReduceScatter: 归约后散射
  • Broadcast: 根进程广播
  • Send/Recv: 点对点通信
  • All-to-All: 全互联通信

集合通信库

  • NCCL: NVIDIA Collective Communications Library — GPU 通信
    • Ring AllReduce: 环形归约算法
    • Tree AllReduce: 树形归约
    • SHARP: NVIDIA 网络内归约
  • Gloo: Facebook 开源 CPU 通信库
  • MPI: Message Passing Interface 标准
  • XCCL: 阿里云定制通信库

数据并行

  • DP (Data Parallel): 数据复制, 梯度 AllReduce
  • DDP (DistributedDataParallel): PyTorch 原生数据并行
    • 梯度桶化 (bucketing)
    • 通信计算重叠
    • 静态图优化

模型并行

  • Tensor Parallelism (TP): 张量切分
    • Megatron-LM: 列并行 + 行并行
    • 1D/2D/2.5D/3D TP 策略
  • Pipeline Parallelism (PP): 层级切分
    • GPipe: 微批次流水线
    • PipeDream: 1F1B 调度
    • Interleaved 1F1B: 交错调度
  • Sequence Parallelism: 序列维度切分

框架

DeepSpeed

  • GitHub: https://github.com/microsoft/DeepSpeed
  • ZeRO 优化:
    • ZeRO-1: 优化器状态分片
    • ZeRO-2: + 梯度分片
    • ZeRO-3: + 参数分片
  • ZeRO-Infinity: 卸载到 CPU/NVMe
  • DeepSpeed-MOE: MoE 训练支持
  • DeepSpeed-Inference: 推理优化

Megatron-LM

  • GitHub: https://github.com/NVIDIA/Megatron-LM
  • 核心: TP + PP + DP 3D 并行
  • 关键技术:
    • TP 通信原语: AllReduce 嵌入
    • 序列并行: LayerNorm/Dropout 通信优化
    • 交织流水线调度

FSDP (PyTorch 原生)

  • 文档: https://pytorch.org/docs/stable/fsdp.html
  • 核心: 参数全分片数据并行
  • 关键特性:
    • ShardingStrategy: FULL_SHARD, SHARD_GRAD_OP, NO_SHARD
    • CPUOffload: 参数/梯度卸载
    • MixedPrecision: 混合精度训练
    • ActivationCheckpointing: 激活重计算
    • torch.distributed.run: 启动器

ColossalAI

长序列训练

  • Ring Attention: 序列维度环形通信
  • Ulysses: 序列并行 + 注意力分片
  • DeepSpeed Ulysses: 序列并行实现

容错与弹性

  • torch.distributed.elastic: 弹性训练
  • Checkpoint restart: 检查点恢复
  • Node failure recovery: 节点故障恢复

关键论文

  • "Megatron-LM: Training Multi-Billion Parameter Language Models" (Shoeybi et al., 2019)
  • "ZeRO: Memory Optimizations Toward Training Trillion Parameter Models" (Rajbhandari et al., 2020)
  • "GPipe: Efficient Training of Giant Neural Networks using Pipeline Parallelism" (Huang et al., 2019)
  • "FlashAttention" (Dao et al., 2022)
最近更新