第 27 章 LLM分布式训练千卡集群

第 27 章 案例:分布式训练与分布式推理

第 27 章 案例:分布式训练与分布式推理

学习目标

  • 通过千卡训练集群的完整复盘,理解第 10-12 章的系统落地;
  • 通过多区域推理部署案例,理解第 20 章的架构权衡;
  • 通过边缘-云协同推理案例,理解分层与成本;
  • 掌握成本、性能、可靠性的复盘方法论。

27.1 案例:千卡训练集群的完整复盘

背景:训练一个 70B 稠密模型(1.5 万亿 token,H100 集群,1024 卡)。这个案例复盘从规划到跑通的全过程,是第 10-12 章的系统集成。

27.1.1 并行方案设计(第 10 章)

  • 模型放不下单卡:70B BF16 权重 140GB → 需要张量并行;
  • 方案:TP=8(机内 NVLink,第 10 章)+ PP=4(跨机,4 机)× DP=32(吞吐)→ 共 8×4×32 = 1024 卡;
  • ZeRO 不参与(预训练不用优化器分片,因为 TP/PP 已摊平权重与优化器状态)——这是「数据并行缺显存才用 ZeRO」的边界(第 8、11 章)。
%%{init: {"themeVariables": {"primaryTextColor": "#000000", "textColor": "#000000", "labelColor": "#000000", "nodeTextColor": "#000000", "labelTextColor": "#000000", "scaleLabelColor": "#000000"}}}%%
flowchart LR
    A[DP=32
吞吐] --> B[PP=4
层切 4 段跨机] B --> C[TP=8
机内 NVLink] C --> D[1024 卡
70B]

27.1.2 基础设施(第 11-12 章)

  • 网络:TP 用机内 NVLink,DP/PP 走 IB;IB 链路健康是第一监控对象(第 11 章);
  • Checkpoint:70B 全量约 150GB,每 1000 步异步写盘(第 11 章)——写盘与训练重叠,不阻塞步进;
  • 容错:平均每周 1-2 次节点故障,靠「自动剔除 + 从最近 checkpoint 恢复」(第 11 章弹性训练);
  • 调度:Volcano 的 gang scheduling(第 12 章)保证 1024 个 Pod 同时就绪才开始。

27.1.3 性能与稳定性(第 11 章)

  • 目标 MFU:规划 45%,实际 38-42%(通信 + 气泡 + 负载不均吃掉的 10%);
  • Loss spike 实战:训练中 3 次 spike,2 次定位到坏数据批次(跳批),1 次定位到 IB 链路抖动(换路)——第 7 章 loss spike 排查法 + 第 12 章基础设施监控的联合作战
  • 扩展效率:512→1024 卡只提升 1.8 倍(扩展效率 0.9)——PP 段间通信与 DP 同步开始吃吞吐(第 11 章)。

27.1.4 成本复盘(第 4、11 章)

  • 成本构成:GPU 时数占 85%(训练)+ 存储/网络 15%;
  • 加卡的收益边界:1024→2048 卡,扩展效率降到 0.7,训练时长只省 35%,但成本翻倍——「加卡省钱」的错觉在此戳破(第 20 章 CAP 与成本权衡的实证)。

27.2 案例:多区域推理部署

背景:把 70B 服务部署到华东、华北两区域,就近服务。

%%{init: {"themeVariables": {"primaryTextColor": "#000000", "textColor": "#000000", "labelColor": "#000000", "nodeTextColor": "#000000", "labelTextColor": "#000000", "scaleLabelColor": "#000000"}}}%%
flowchart LR
    A[华东用户] --> B[华东集群
主] C[华北用户] --> D[华北集群
主] B -.故障.-> D D -.溢出.-> E[公有云弹性池]

工程复盘要点(第 20 章落地):

  1. 模型制品同步:70B 权重 140GB + TensorRT Engine,通过镜像仓库/对象存储 CDN 双区同步(第 18 章「重制品」);
  2. 一致性路由:会话按租户/前缀 hash 到固定区域(第 20 章),缓存命中靠「同前缀同区」;
  3. 故障转移的隐性成本:跨区切换 = 重新 Prefill 长上下文,TTFT 跳变(第 20 章)——SLO 要区分「本区正常」与「跨区降级」
  4. 成本教训:双区常驻 70B 集群利用率不足 40%,最终方案是「主区常驻 + 次区弹性(冷启动预警)」——用弹性池替代双常驻,省 30% 成本(第 20 章 CAP 权衡的实证)。

27.3 案例:边缘-云协同推理

背景:语音助手(端侧麦克风 + 云端大模型),要低延迟又要能力。

%%{init: {"themeVariables": {"primaryTextColor": "#000000", "textColor": "#000000", "labelColor": "#000000", "nodeTextColor": "#000000", "labelTextColor": "#000000", "scaleLabelColor": "#000000"}}}%%
flowchart LR
    A[端侧
VAD+ASR 小模型] --> B[端侧意图分类
简单任务本地答] B -->|复杂任务| C[云端
大模型+Agent] B -->|简单任务| D[本地小模型
低延迟零成本]

复盘要点(第 20 章分层推理):

  • 端侧:量化 1B ASR + 意图分类(第 13、18 章),简单指令本地秒回;
  • 云端:复杂任务(多轮对话、知识问答)上大模型;
  • 协同:端侧把「去隐私后的请求」发云端(第 20 章边缘协同)——音频原始数据不出端,隐私与能力兼得;
  • 成本:70% 简单请求本地消化 → 云端成本降 70%(第 26 章三板斧的端侧版);
  • 教训:分层路由的「复杂度判定」是瓶颈——判定错(简单任务送云端)就白搭;用「端侧小模型置信度阈值」做判定(第 23 章不确定度阈值)。

27.4 复盘方法论:成本、性能、可靠性

三个案例的共同复盘框架(可复用为模板):

维度 复盘问题 工具
成本 实际 vs 规划差多少?钱花在哪?加卡是否划算? 第 4 章成本账 + 第 11 章 MFU + 第 17 章成本公式
性能 MFU/扩展效率/延迟是否达标?瓶颈在哪层? 第 11 章 Profiler + 第 21 章四层指标
可靠性 故障频率/时长?恢复多快?SLO 达成率? 第 23 章错误预算 + 第 21 章监控

复盘铁律

  1. 先有基线再复盘:规划时的 MFU/成本/SLO 目标要提前写死,否则复盘无对照(第 21 章 SLO);
  2. 成本与性能是一体的:MFU 低 10% = 成本高 10%(第 11 章)——性能优化就是成本优化;
  3. 复盘要沉淀成 checklists:附录 D-G 的检查清单就是复盘输出(第 19 章「把经验固化为流程」)。

本章要点回顾

  1. 千卡训练案例:TP 机内 + PP 跨机 + DP 吞吐的组合,ZeRO 在预训练里不是必需品;MFU 38-42% 是现实目标。
  2. 训练稳定性是「数据 + 网络 + 数值」三方联合排查;加卡收益递减要在规划时算清。
  3. 多区域部署:重制品同步、一致性路由、跨区切换的 TTFT 成本;弹性池替代双常驻省成本。
  4. 边缘-云协同:端侧消化简单请求,云端处理复杂任务,去隐私转发——省 70% 成本。
  5. 复盘方法论:先定基线、成本与性能一体、沉淀成 checklist。

习题

  1. 用第 4 章 FLOPs 账算:1024 卡 H100(MFU 40%)训 70B×1.5T token 要多久?验证 27.1 的时长。
  2. 你的多区域部署要不要双常驻?用「利用率 + 弹性池冷启动时间」构建决策模型。
  3. 边缘协同的「复杂度判定」用置信度阈值,阈值定多少?如何用数据调优?
  4. 写一份你上一个分布式任务的复盘:成本、性能、可靠性三维度,各列 3 个问题。

延伸阅读

  • Meta / NVIDIA 的 1000+ 卡训练博客
  • DeepSeek-V3 / Llama 3 技术报告(训练基础设施细节)
  • 各云厂商多区域部署案例
  • Google SRE 手册(复盘与错误预算)

下一章预告

第 28 章未来趋势:更大 vs 更小模型、MoE/多模态/Agent/世界模型、端侧 AI 与隐私计算、绿色 AI,以及自动化 MLOps/LLMOps——收束全书的展望。