跳转至

3. 学习路线(24 周,每周 10–12 小时)

时间安排建议:工作日每天 1 小时,读文档或听课;周末 5–7 小时,做实验。

算力原则:先用免费的,不够再花钱,每次用完立刻关机。AutoDL 按秒计费,关机即停止计费。

3.1 便宜算力方案(2026-10-13 实测价格)

方案 价格 适合用来做什么 注意事项 / 来源
Kaggle Notebooks 免费,每周 30 小时 GPU;可选 T4 ×2 单机双卡 DDP/FSDP、nccl-tests 入门 Kaggle 文档;单次会话最长约 12 小时;大陆访问可能需要处理网络问题
Google Colab 免费版有 T4(不保证);Pro $9.99/月(100 compute units) 跑 notebook 实验 需要境外支付方式,大陆访问不稳定;价格参考
魔搭 ModelScope Notebook 新用户免费 GPU 额度(第三方博客称 PAI-DSW 24G 显存 36 小时) 国内免费 GPU 起步 额度数据来自第三方博客,未经官方核实,以魔搭官网为准
AutoDL RTX 4090 24G 约 ¥1.98/小时(按量);包日/包周/包月更便宜 vLLM 部署 7B–14B 模型、DCGM/监控实验、多卡实例跑 NCCL 价格来自 GPU 算力雷达(2026-10-13 抓取);计费规则见 AutoDL 文档;AutoDL 是容器实例,没有宿主机权限,不能自己装驱动或跑 K8s
其他国内 4090 算家云 ¥1.24/小时、恒源云 ¥1.84/小时、矩池云 ¥2.20/小时 同上 同上来源;价格波动较大
A100 80G(国内) 算家云约 ¥9.80/小时、优云智算约 ¥10.75/小时 偶尔跑 30B+ 模型推理、对比 4090 与数据中心卡的区别 GPU 算力雷达;AutoDL A100/A800 的价格没有查到,以官网为准
Modal 每月 $30 免费额度 CS336 官方推荐的自学算力 CS336 课程页
本地 / 公司测试环境 ¥0 kind/k3s + fake-gpu-operator 模拟 GPU 调度;用 Soft-RoCE(rdma_rxe) 在两台普通 VM 上练 RDMA 命令 fake-gpu-operator、rdma-core、perftest

说实话,有一块个人练不了:多机 InfiniBand、真实的万卡故障,个人几乎无法低成本接触。本路线用 Soft-RoCE、单机多卡和 nccl-tests 打好概念基础,真机经验要靠转岗或内部轮岗获得(见第 6 节)。

3.2 分阶段计划

关于 K8s 基础:若需要备考 CKA,阶段 2 可延长为 5 周(含约 15 小时备考)。本路线默认已具备 K8s 基础,阶段 2 压缩为 4 周,并且全部用来学 GPU 专属的调度内容。省下的时间重新分配如下:

阶段 上一版 本版 变化
2 K8s 上的 GPU 调度 第 7–11 周,~55 小时(含 ~15 小时 CKA 备考) 第 7–10 周,~45 小时(全部是 GPU 调度) GPU 调度的实际学习时间从 ~40 小时增加到 ~45 小时;新增 DRA、MIG/time-slicing 配置实验、CKS 视角的多租户隔离
3 分布式训练与 RDMA/NCCL 第 12–16 周,~55 小时 第 11–15 周,~60 小时 +5 小时:NCCL 拓扑与调优变量、K8s 上的 RDMA 网络(Network Operator / Multus)
4 LLM 推理服务 SRE ⭐ 第 17–21 周,~55 小时 第 16–21 周,~65 小时 +1 周、+10 小时:vLLM 与 SGLang 对比、prefix caching、PD 分离(llm-d / Dynamo)
合计 ~265 小时 ~270 小时 仍在每周 10–12 小时的范围内

阶段 0|AI 常识速成(第 1–2 周,约 20 小时,¥0)

  • 学什么:神经网络和 Transformer 的直觉;训练 vs 推理;参数量、精度与显存的关系(7B 模型 FP16 权重约 14 GB);Token、KV Cache、量化分别是什么。
  • 资源:
    • Hugging Face LLM Course 第 1–3 章
    • B 站搜索“3Blue1Brown 深度学习”中文字幕版
    • Karpathy 的 nanoGPT(只需要读 README 和 train.py)
    • NVIDIA DLI 免费课 An Even Easier Introduction to CUDA(约 1 小时,DLI 目录)
  • ✅ 检查点:能在 5 分钟内讲清楚“为什么推理需要 KV Cache、为什么训练比推理更吃显存”;能手算一个 13B 模型 FP16 推理至少需要多少显存。

阶段 1|GPU 单机运维(第 3–6 周,约 45 小时,算力约 ¥50)

  • 学什么:
    • 驱动、CUDA Toolkit、cuDNN、NCCL 的版本兼容关系;nvidia-smi 各字段的含义;nvidia-smi topo -m
    • DCGM 与 dcgm-exporter
    • XID 错误表、ECC/Retired Pages
    • MIG/MPS 的概念;NVIDIA Container Toolkit
  • 项目 1|GPU 节点健康检查与监控:
    • 在 AutoDL 4090 上写一个 gpu-healthcheck.sh/py,检查驱动版本、ECC、温度、功耗,并用 dmesg 扫描 XID。
    • 部署 dcgm-exporter(容器内如果权限不够,就改用 nvidia-smi 自制 exporter),在 Grafana 上搭一个 GPU 面板。
    • 写一份“GPU 掉卡 / XID 79 处置 SOP”。
  • ✅ 检查点:GitHub 仓库包含脚本、Grafana 截图和 SOP;能说出 5 个常见 XID 的含义和处置方法。

阶段 2|K8s 上的 GPU 调度(第 7–10 周,约 45 小时,¥0–50;跳过 K8s 基础与考证)

  • 前提:K8s 基础不再复习(默认已具备 CKA/CKS 水平),直接从 GPU 专属的部分开始。
  • 学什么:
    • Device Plugin 机制:读 NVIDIA k8s-device-plugin 的注册、ListAndWatch、Allocate 流程,以及 CDI(Container Device Interface);再和 DRA 动态资源分配(K8s 官方文档标注 v1.35 起 Stable)以及 NVIDIA 的 DRA 驱动 做对比
    • GPU Operator 的组件:driver、container-toolkit、device-plugin、GFD(GPU Feature Discovery)、dcgm-exporter、MIG manager、validator,以及 ClusterPolicy
    • GPU 共享:time-slicing(官方文档说明它没有显存和故障隔离,而且开启后 dcgm-exporter 无法把指标关联到容器)、MIG 的 single/mixed 策略、MPS;三者在隔离性、利用率、监控上的取舍
    • gang scheduling 与队列配额:Volcano、Kueue、NVIDIA KAI-Scheduler;抢占、公平共享、拓扑感知调度
    • 用 LeaderWorkerSet 部署多机推理
  • 项目 2|多租户 GPU 调度与隔离实验:
    • 用 kind + fake-gpu-operator 模拟 8 节点 × 8 卡的集群。
    • 分别配置 Volcano 和 Kueue 两套方案:两个团队的配额、抢占、gang 调度(一个 PyTorchJob 要求 8 卡同时就位)。
    • 写出 time-slicing 和 MIG(mixed 策略)的 ConfigMap / ClusterPolicy 配置,说明节点标签和资源名会怎么变化(例如 nvidia.com/gpu.replicas、nvidia.com/mig-1g.5gb)。fake 集群能模拟到什么程度要自己验证;真实 MIG 需要 A100/H100 等数据中心卡和宿主机权限,AutoDL 的容器实例做不到,可以在理解层面准备,或者借用公司测试环境。
    • 发挥 K8s 安全(CKS)知识:给每个团队的命名空间加上 RBAC、NetworkPolicy、Pod Security 和 ResourceQuota,写一份“多租户 GPU 平台隔离方案”(time-slicing 无隔离 → MIG 硬件隔离 → K8s 层隔离)。
    • 对比两种调度方案的优劣,写成博客。
  • ✅ 检查点:能讲清楚“为什么训练任务需要 gang scheduling、它和默认调度器有什么不同”;能对比 time-slicing、MIG、MPS 在隔离和监控上的差异;能说出 device plugin 和 DRA 的区别。

阶段 3|分布式训练与 RDMA/NCCL(第 11–15 周,约 60 小时,算力约 ¥120–180)

  • 学什么:
    • PyTorch DDP / FSDP、torchrun
    • DP/TP/PP/EP 的含义:精读 Hugging Face Ultra-Scale Playbook
    • NCCL 常用环境变量(NCCL_DEBUG=INFO、NCCL_SOCKET_IFNAME、NCCL_IB_HCA、NCCL_P2P_DISABLE,以及调优用的 NCCL_ALGO、NCCL_PROTO、NCCL_TOPO_DUMP_FILE,以 NCCL 环境变量文档 为准)、nccl-tests(algbw 与 busbw 的区别)、Ring/Tree 算法
    • RDMA 基本概念(QP、verbs、GPUDirect RDMA);IB vs RoCEv2、PFC/ECN
    • K8s 上的 RDMA 网络:NVIDIA Network Operator(RDMA 共享设备插件、SR-IOV、用 Multus 给 Pod 加第二网卡),理解训练 Pod 是怎么拿到 IB/RoCE 网卡的
    • Megatron/DeepSpeed 只要求概念层面的理解
    • Checkpoint 与断点续训
  • 项目 3|“把训练搞坏再修好”:
    • 在 Kaggle T4×2 或 AutoDL 双卡 4090 上用 DDP/FSDP 训练 nanoGPT,跑 all_reduce_perf 记录总线带宽;再对比不同 NCCL_ALGO/NCCL_PROTO 下的结果。
    • 人为注入故障:kill 掉一个 rank、设置错误的 NCCL_SOCKET_IFNAME、把 NCCL timeout 调小、写满磁盘让 checkpoint 失败。逐个记录现象、日志特征和恢复方法。
    • 另用两台普通 VM 配置 Soft-RoCE,跑 ib_write_bw,熟悉 ibv_devinfo、rdma link 这些命令。
    • 可选挑战:在这两台 VM 上装 k3s,尝试用 Multus 给 Pod 加第二网卡,并在 Pod 里使用 Soft-RoCE 设备跑 ib_write_bw(能不能跑通取决于内核和插件版本,本报告未实测)。
  • ✅ 检查点:输出一份“NCCL timeout 排查决策树”(应用层 → NCCL → 网络 → 硬件);能回答腾讯训练 SRE JD 中提到的面试题:“某节点频繁 NCCL 超时,你从哪里入手?”

阶段 4|LLM 推理服务 SRE(第 16–21 周,约 65 小时,算力约 ¥180–300)⭐ 重点

  • 学什么:
    • vLLM 与 SGLang 的部署和参数(--gpu-memory-utilization、--max-num-seqs、--tensor-parallel-size)
    • PagedAttention 与 continuous batching;prefix caching、chunked prefill;量化(AWQ/GPTQ/FP8)
    • 推理指标:TTFT、TPOT、吞吐、排队长度
    • vLLM production-stack、llm-d(K8s 原生分布式推理)、NVIDIA Dynamo;理解 prefill/decode 分离(PD 分离)解决什么问题
    • Triton / TensorRT-LLM 只要求概念层面的理解
  • 项目 4|一个小型 MaaS 平台:
    • 在 AutoDL 4090 上用 vLLM 部署 Qwen 7B 级别的模型,接入 Prometheus,定义 SLO(例如 P95 TTFT < 1s)。
    • 用 vLLM 自带的 benchmark 压测不同并发、不同输入输出长度,画出“吞吐-延迟曲线”。
    • 新增:用同一个模型、同样的压测参数对比 vLLM 和 SGLang;对比开启和关闭 prefix caching 时的 TTFT。
    • 算出每百万 token 的成本(¥1.98/小时 ÷ 实测 token/小时),给出容量规划公式。
    • 再租 1–2 小时 A100 80G 对比同一模型的表现。
    • 把 production-stack 或 llm-d 的 Helm manifests 部署到阶段 2 的 fake GPU 集群上,验证调度和配置(AutoDL 不能跑 K8s;如果要在 K8s 上跑真实 GPU,需要有宿主机权限的 GPU 云主机,本报告没有核实这类主机的价格)。
    • 写一份“显存不足 / 请求积压 / 模型加载失败”故障手册,正好对应米哈游 JD 的原文要求。
  • ✅ 检查点:能对着米哈游 MaaS SRE 的 JD 逐条说出“我做过哪件事”;有一张吞吐-延迟-成本图,和一份 vLLM vs SGLang 的对比结论。

阶段 5|存储、成本与求职冲刺(第 22–24 周,约 35 小时,¥0)

  • 学什么:
    • 并行文件系统与 JuiceFS(中文文档)、阿里云 CPFS 的定位
    • Checkpoint IO 与模型文件分发(P2P、预热)
    • MFU/ETTR 的概念
    • 通读 stas00/ml-engineering,这是 LLM 训练运维领域公认的“开源教科书”
  • 求职准备:
    • 把 4 个项目整理成 README 和博客。
    • 简历用 JD 的关键词改写:GPU、DCGM、NCCL、vLLM、Volcano、SLO、成本;如有 CKA/CKS,放在简历首屏。
    • 用 WatchJobs 页面上整理的面试题做模拟面试。
    • 可选:考 NVIDIA NCA-AIIO(见第 5 节,性价比一般)。
  • ✅ 最终检查点:
    1. 4 个 GitHub 项目,其中项目 2 要体现“GPU 调度 + CKS 级别的多租户隔离”。
    2. 一份 vLLM/SGLang 推理压测与成本报告。
    3. 投递或内部申请至少 10 个岗位,优先 P10 米哈游、P6 MiniMax、P9 腾讯上海、P5 长江存储,以及所在公司内部的 AI 平台团队。

3.3 时间与费用总览

阶段 周次 小时 算力花费 其他花费
0 AI 常识 1–2 ~20 ¥0 ¥0
1 GPU 单机 3–6 ~45 ~¥50 ¥0
2 K8s GPU 调度 7–10 ~45 ¥0–50 ¥0(默认已具备 CKA/CKS;如需报考另计)
3 分布式与 RDMA/NCCL 11–15 ~60 ~¥120–180 ¥0
4 推理 SRE 16–21 ~65 ~¥180–300 极客时间一门课 ¥59(可选)
5 存储/成本/求职 22–24 ~35 ¥0 NCA-AIIO ≈ ¥900(可选)
合计 24 周 ~270 小时 ≈ ¥350–600 ¥0 – 约 ¥960

阶段 3、4 的时间加长了,所以算力费用比只做基础实验(¥300–600)略高。即使把所有可选项都加上,6 个月总花费也不到 ¥1,600,平均每月不到 ¥270,属于低预算方案。如需报考 CKA,另加约 ¥3,600(中文站报名费)。

本预算没有计入 CKA/CKS 报考或续证费用;证书到期需重新考试,费用另算。