AI Infra 系统学习路线(面向资深K8s管理员)

背景假设:已精通K8s调度/运维,熟悉GPU资源管理(device plugin/调度/监控),
但未系统训练过模型、未深入看过PyTorch/Transformer/vLLM等框架内部。
目标:训练系统 + 推理系统为重点,GPU底层性能与模型原理为支撑。
节奏:10-15h/周,总周期约 22-24 周(~5.5个月),每阶段必须产出可复现的实验数字。


Phase 0|地图与词汇(1周)

快速建立全局认知,知道每个术语属于哪一层,后面阶段才不会”学了后面忘了前面”。

  • 精读一遍 pacoxu/ai-infra 的 landscape 图和定义:
    Training(DP/TP/EP/SP/PP) / Inference(P-D, KVCache) / RL(训练推理一致性) 三分法
  • 过一遍 learninfra.dev 目录作为后续查词典用(不用细读,知道有哪些主题即可)
  • 产出:自己整理一张术语表/脑图(Tokenizer→Attention→KVCache→DP/TP/PP→ZeRO→PagedAttention→量化…),标注”我已经懂”/“要补”

Phase 1|PyTorch + Transformer 从”看懂”到”写出来”(4周)

你了解概念但没训练过模型,这一步必须动手把 forward/backward/attention 用代码走一遍,
否则后面”为什么要切分””通信量多大”全是空中楼阁。

核心资源

  • Karpathy Neural Networks: Zero to Hero(micrograd → makemore → nanoGPT)— 手写 autograd 和 GPT
  • The Annotated Transformer — 逐行对照论文看代码
  • HuggingFace Transformers quickstart:tokenizer / model / Trainer,做一次真实 fine-tune
  • learninfra.dev:《Inside the Transformer》《GPU Memory Math》巩固 RoPE/GQA/MLA/MoE 和显存构成

项目(必须产出数字)
在1张GPU上训练一个 nanoGPT 量级模型,记录:

  • 3种 batch size 下的 tokens/sec 和峰值显存
  • 显存拆解:权重 / 梯度 / 优化器状态 / 激活 各占多少

Phase 2|分布式训练系统(重点一,5周)

这是你日常运维对象的”内部原理”,优先级最高。

核心阅读(按顺序)

  1. Hugging Face Ultra-Scale Playbook — DP/TP/PP/EP/SP/ZeRO 如何组合,怎么选
  2. How to Scale Your Model(jax-ml scaling-book)— rooflines + 并行策略的系统性分析,TPU视角但方法论通用
  3. 论文精读三篇:
    • Megatron-LM(Tensor + Pipeline 并行)
    • ZeRO: Memory Optimizations Toward Training Trillion Parameter Models
    • PyTorch FSDP: Experiences on Scaling Fully Sharded Data Parallel
  4. NCCL collectives 基础:all-reduce / all-gather / reduce-scatter 对应哪种并行策略的通信模式

实践

  • 用 FSDP2 或 DeepSpeed ZeRO-3 在公司集群上微调一个 1B~8B 模型(多机多卡)
  • 测 MFU、step time、tokens/sec
  • 故意 kill 一个 worker,验证分布式 checkpoint 保存/恢复耗时
  • 强烈建议:挑一个你集群里真实跑过的分布式训练 job,做 case study —— 它用的是什么并行组合?通信量多大?为什么这样配置?

Phase 3|推理服务系统(重点二,5周)

核心论文/资源

  • vLLM 论文:Efficient Memory Management for LLM Serving with PagedAttention(SOSP’23)
  • SGLang 论文:Efficient Execution of Structured Language Model Programs(RadixAttention)
  • learninfra.dev 系列(非常对口,建议全看):The KV Cache / Batching for LLM Inference /
    Quantization / Speculative Decoding / LLM Inference at Scale
  • Dynamo / PD 分离架构:参考 pacoxu/ai-infra 的 docs/inference/pd-disaggregation.md

实践

  • 走读 vLLM 源码关键模块:scheduler、block manager、worker 执行流程
  • 项目:同一个 8B 模型分别用 vLLM 和 SGLang 部署,在并发 1/16/64 下测 TTFT、ITL、吞吐/GPU,
    再换量化版本(FP8/AWQ)对比一次
  • 延伸看一次:投机解码(Medusa/EAGLE)、前缀缓存命中率对延迟的影响

Phase 4|GPU底层与性能排障(支撑性,3周)

这块直接提升你日常故障诊断能力,和你的岗位结合最紧。

  • CUDA 编程模型基础:线程/block/warp、内存层级(learninfra.dev《GPU Programming with CUDA》)
  • NCCL:在集群上跑 nccl-tests,理解 ring all-reduce 实现与带宽测算
  • Profiling:Nsight Systems(看一次训练 step 时间都花在哪)+ PyTorch Profiler(算子级)
  • 故障诊断:Xid codes、GPU 掉卡/ECC错误/NCCL hang 等真实故障模式
    (learninfra.dev《Troubleshooting GPU Clusters》里六个真实案例非常对口)
  • 建议:复盘一次你集群里真实发生过的GPU故障或性能瓶颈,用上述工具重新分析一遍

Phase 5|模型/算法原理深化 + 综合案例(4周)

  • Pretraining 全流程:数据pipeline、优化器、scaling law(可选做 Stanford CS336 的 Assignment 1/2)
  • Post-training:SFT / RLHF / DPO / GRPO —— 重点理解 RL 训练的 actor-rollout 架构,
    因为 RL 训练同时需要”训练”和”推理”两套系统协同,这正是你两个重点方向的交汇点
  • 综合案例精读:DeepSeek-V3 Technical Report + Insights into DeepSeek-V3: Scaling
    Challenges and Reflections on Hardware
    (arXiv 2505.09343)—— MoE + MLA + 大规模训练 +
    推理优化 + 硬件约束的综合实战案例,非常适合作为”期末案例”
  • 产出:写一份你自己的技术分析——如果要在你的K8s集群上支撑类似规模的 MoE 训练 + RL
    后训练,调度/网络/存储需要做哪些改造

Phase 6|持续跟进(长期)

  • 关注 pacoxu/ai-infra(每周更新的 landscape + blog)
  • 关注 vLLM / SGLang / Megatron-LM 的 release notes
  • 定期看 MLSys、OSDI/SOSP 中 AI 系统相关论文

时间总览

Phase 内容 周数 累计
0 地图与词汇 1 1
1 PyTorch + Transformer 基础 4 5
2 分布式训练系统(重点) 5 10
3 推理服务系统(重点) 5 15
4 GPU底层与性能排障 3 18
5 模型原理深化 + 综合案例 4 22
6 持续跟进 - -

原则

  • 每阶段必须有带数字的产出(repo + 实测数据),不是看完课程就算完成
  • 尽量用你自己集群里真实的训练/推理任务做 case study,比纯 toy 实验价值高得多
  • 顺序不要跳:Phase 3的延迟分析依赖Phase 1的token生成原理;Phase 2的MFU分析依赖Phase1的显存构成