AI Infra 系统学习大纲
目标:理解从硬件、算子、框架到训练、推理和平台的完整链路,能够复现问题、定位瓶颈、验证优化,并交付可运行的工程项目。
本文根据 NVIDIA、寒武纪、模型厂商与互联网平台的公开文档、论文和开源项目,设计“公共基础 → 分方向实践 → 项目验收”的路线。路线与时间安排是本文的归纳建议,不代表各公司的内部培训、技术全景或招聘标准;不同公司和岗位之间存在大量能力交叉。
适用起点:具备基本 Python、Linux 和数据结构知识。建议每周 8–12 小时,用约 24 周完成公共主线与一个方向项目,再用 8–12 周深化。以实验验收决定进度,无需同时学完所有框架。
1. 建立知识地图
| 层次 | 核心问题 | 学习内容 |
|---|---|---|
| 硬件与系统 | 算力、带宽、容量各限制什么? | CPU/GPU/MLU、内存层次、NUMA、PCIe、网络、存储 |
| 算子与编译 | 张量计算怎样映射到设备? | 并行编程、布局、分块、融合、计算图、IR、代码生成 |
| 框架与运行时 | 模型如何执行与求导? | PyTorch、Autograd、异步执行、内存分配、Profiler |
| 分布式训练 | 如何跨设备扩展? | 集合通信、并行策略、状态分片、checkpoint、恢复 |
| 推理系统 | 如何在延迟约束下提高吞吐? | KV Cache、批处理、调度、量化、缓存、压测 |
| 数据与平台 | 如何稳定、可复现地交付? | 数据流水线、容器、调度、配额、可观测性、版本管理 |
先跟踪一次训练迭代或推理请求,再逐层深入。起点自测:能否写训练循环并恢复 checkpoint?能否解释张量的 shape、stride、dtype 和 device?能否区分数据等待、传输与计算耗时?不熟悉的部分先补基础。
2. 四条路线的侧重
下表是根据后文资料归纳的学习方向,不是对公司能力的排他分类。
| 路线 | 重点能力 | 公开学习入口 | 建议作品 |
|---|---|---|---|
| NVIDIA 生态 | GPU 编程、算子、通信、训练和推理运行时 | CUDA、Triton、Megatron-LM、TensorRT-LLM | 多 shape 算子优化与端到端对照 |
| 寒武纪等芯片厂商生态 | 硬件映射、框架接入、模型迁移、精度调试 | BANG C、MLU-OPS、torch_mlu、CNNL、CNCL | 模型或算子的适配与性能报告 |
| AI 模型厂商 | 模型与系统协同、MoE 通信、数据供给、后训练 | DeepSeek-V3、DeepEP、3FS;结合 verl 学后训练 | 小型 MoE 或训练流水线分析 |
| 互联网大厂/云平台 | 资源调度、在线服务、可靠性与成本 | 阿里云 PAI、字节参与的 verl 等项目 | 有监控、过载控制和恢复能力的服务 |
偏芯片软件,深入系统、算子与编译;偏训练/推理引擎,深入模型执行、分布式和调度;偏平台工程,深入网络、存储、Kubernetes 与可靠性。按岗位选择重点,比按公司标签选择更准确。
3. 公共主线:24 周安排
第 1–3 周:系统基础与测量
- 学习 C/C++ 内存与编译链接,Python 开销,进程/线程、缓存、I/O、Socket 与 NUMA;区分吞吐、延迟、并发和分位数。
- 实验:固定小模型,改变 batch、读取方式和数据加载进程数,观察 CPU、内存、磁盘和设备资源。
- 验收:交付基准脚本、原始数据和瓶颈分析;明确预热、重复次数与计时范围,解释高利用率为什么不一定代表高有效吞吐。
第 4–6 周:PyTorch 与模型执行
- 学习 Tensor 布局、view/copy、Autograd、优化器、混合精度、异步执行和内存分配;拆解 Transformer 的 Attention、MLP 与归一化。
- 实验:实现小型 Transformer 训练循环,保存并恢复 checkpoint;用 Profiler 比较不同序列长度和精度。
- 验收:估算参数、梯度、优化器状态和激活内存并解释实测峰值;指出一个拷贝或同步点,验证恢复后的训练步数、优化器和随机状态。
第 7–10 周:设备编程与算子优化
- 学习并行组织、内存层次、分块、复用、同步、融合、算术强度和 Roofline;选择 CUDA/Triton 或 BANG C 实践。
- 实验:按向量加法 → Reduce → Softmax → 矩阵乘法逐步深入,完成一个算子的优化。
- 验收:覆盖多种 shape、dtype 和边界输入,报告误差与预热后耗时;解释一个收益和一个退化场景,明确设备同步方式。
- 资料:CUDA 最佳实践、Triton 教程、MLU-OPS。
第 11–14 周:分布式训练
- 学习 AllReduce、AllGather、ReduceScatter;DDP、梯度累积、全局 batch、FSDP/ZeRO;张量、流水线和专家并行,通信重叠和故障恢复。
- 实验:单卡改两卡 DDP,改变 batch 或梯度累积配置;有条件时加入状态分片。比较前先区分强扩展与弱扩展。
- 验收:报告 step time、样本吞吐、峰值显存、通信占比和恢复时间;解释扩展损失,说明工作量和优化语义是否一致。
- 资料:PyTorch DDP、分布式教程。
第 15–18 周:推理服务
- 学习 prefill/decode、KV Cache、分页、连续批处理、前缀缓存、量化、推测解码、排队、取消与背压。
- 实验:部署设备能承载的模型,构造输入/输出长度、并发和到达速率的负载矩阵;沿请求入口、调度、执行、缓存和输出阅读源码。
- 验收:报告 TTFT、逐 token 延迟定义、端到端 P50/P95/P99、成功吞吐、输出 token 吞吐、失败率和显存;说明排队和缓存条件。
- 衔接:SGLang 调研、源码导读、官方压测指南。
第 19–21 周:数据与平台
- 学习数据分片、预取、缓存与版本;容器和运行时兼容;队列、配额、健康检查、指标、日志、追踪和回滚。
- 实验:容器化模型服务,加入限流、超时和监控,模拟进程退出和请求过载;先单机,再按条件扩展 Kubernetes。
- 验收:他人能复现部署,能定位并验证故障恢复,能给出满足延迟目标的容量上限。
第 22–24 周:方向项目
从后文选一个方向,交付架构、固定环境、运行命令、基线、原始数据、瓶颈证据、优化对照和失败案例。缺少多卡或指定设备的实验标为待验证,不能用模拟结果代替真实硬件性能。
4. NVIDIA 路线:从 GPU 到训练与推理运行时
路线依据 CUDA 官方文档及 NVIDIA 的 Megatron-LM、TensorRT-LLM 项目,分别学习 GPU 优化、大规模 Transformer 训练与 LLM 推理运行时。
- 硬件与 CUDA:warp/block、寄存器、共享内存、全局内存、访存合并和同步。
- 性能分析:先看完整时间线,再看热点 kernel,区分带宽、计算、launch 与传输开销。
- 算子与编译:实现 Reduce/Softmax/GEMM,练习 tiling、融合和布局,再用 Triton 对照编程抽象。
- 通信与训练:掌握集合通信和互联拓扑,再阅读 Megatron 的并行划分、调度和训练流程。
- 推理运行时:阅读 TensorRT-LLM 的执行、缓存和批处理路径,用真实负载压测。
方向项目:优化归一化或 Softmax 算子,接回模型测端到端收益。解释热点占比、额外拷贝和调用开销,避免把单算子收益直接视为模型收益。
进阶问题:为什么更高 occupancy 不一定更快?同一优化在不同 shape 上为何表现相反?编译成本何时抵消运行收益?
5. 寒武纪路线:框架适配、算子与模型迁移
NeuWare 官方介绍 提供 CNNL、CNCL、MagicMind 等软件栈入口。官方课程目录 涵盖环境、框架、BANG 编程与性能分析,但涉及不同代产品,需核对目标设备和软件版本。
- 环境与运行时:梳理驱动、CNToolkit、运行时和框架版本,跑通设备发现、张量操作及最小模型。
- 框架接入:阅读 torch_mlu,跟踪操作从 PyTorch 到设备实现的路径,理解布局、dtype 和不支持操作的处理。
- 算子开发:通过 MLU-OPS 学 BANG C 示例、接口、精度和性能测试,依据目标架构理解片上存储、数据搬运与任务划分。
- 精度与性能:先对照参考输出检查边界、累积误差与布局,再分析计算、搬运和同步,覆盖多 shape 测试。
- 模型迁移:列出不支持操作、版本限制、转换和额外拷贝,逐项定位;有多卡条件再研究 CNCL 通信。
- 部署:按实际版本选择框架或推理引擎;MagicMind 可作为公开学习入口,不预设所有模型和设备都支持。
方向项目:完成“小模型参考实现 → MLU 跑通 → 精度对照 → 热点分析 → 优化”,交付兼容性清单、调用链和可复现性能报告。
实践门槛:MLU-OPS 仓库说明 SDK/容器资源需联系官方支持获取。源码可读不代表本机可运行;缺少设备或依赖时先做调用链、测试设计和内存估算,实测另行补齐。
NVIDIA 与寒武纪对照
下表按职责作概念映射,不表示 API、硬件结构或性能行为一一等价。
| 共同问题 | NVIDIA 侧 | 寒武纪侧 | 要形成的能力 |
|---|---|---|---|
| 自定义计算 | CUDA;Triton 作为另一抽象 | BANG C、MLU-OPS | 按硬件重划计算与搬运 |
| 框架执行 | PyTorch CUDA 路径 | torch_mlu 路径 | 跟踪分发、布局、精度和回退 |
| 基础运算库 | cuBLAS/cuDNN 的职责 | CNNL 的职责 | 判断调用库还是自定义算子 |
| 集合通信 | NCCL 相关概念 | CNCL 相关概念 | 分析消息规模、拓扑与重叠 |
| 推理优化 | TensorRT-LLM 等运行时 | 实际版本支持的框架或引擎 | 对齐模型、精度和服务指标 |
不要机械翻译 warp、block 或内存层次。先固定工作负载和精度,再分别分析执行方式。
6. AI 模型厂商路线:模型与系统协同
以 DeepSeek 公开材料为案例,不推断其他厂商的未公开实现。DeepSeek-V3 报告 可用于学习模型架构与训练系统协同;DeepEP 面向专家并行通信;3FS 是面向 AI 工作负载的分布式文件系统。
- 训练负载:理解 dense/MoE、序列长度、激活和优化器状态,估算计算与内存。
- 并行组合:分析数据、张量、流水线和专家并行怎样改变通信及负载分布。
- MoE 通信:结合 DeepEP 理解 token dispatch/combine、跨设备通信和负载不均,运行前核对硬件依赖。
- 数据与恢复:结合 3FS 思考数据供给、checkpoint 与存储可靠性,区分架构阅读和完整部署。
- 后训练系统:通过 verl 学 rollout、训练、权重同步和资源组织,区分算法质量与系统吞吐。
- 实验效率:建立可复现配置、评估与恢复流程,让优化支持持续迭代。
方向项目:用小型 MoE 或后训练流程定位通信、rollout 或数据等待中的一个瓶颈。缩小模型和模拟负载可验证机制,但不能直接证明大集群收益;验收需说明优化是否保持数值行为或训练质量。
7. 互联网大厂路线:平台、稳定性与成本
阿里云 PAI 架构 展示基础资源、平台工具、模型服务与业务层,并包含训练、部署、容错和快照能力,可用于建立平台全景。字节参与的 verl 提供后训练案例;互联网公司也会深入模型和底层系统,岗位比公司标签更重要。
- 资源平台:容器、Kubernetes、设备资源、队列、配额、优先级和拓扑感知。
- 训练平台:作业提交、数据和镜像版本、日志、checkpoint、重试和恢复。
- 推理平台:服务发现、批处理、限流、弹性、灰度、模型加载与冷启动。
- 可靠性:定义 SLO,观察长尾、过载、慢设备和依赖故障,设计恢复实验。
- 容量与成本:区分利用率和有效吞吐,测量延迟约束下的容量,计入空闲及失败开销。
- 业务链路:理解搜索、推荐、特征或索引更新中的新鲜度、质量和性能取舍。
方向项目:部署有监控的服务,设置两类请求的队列或配额,测试过载和重启恢复,交付容量报告。检索方向可衔接 Faiss 调研 与 源码导读,增加召回率、延迟、内存、构建和更新成本的对照。
8. 每周学习闭环
每周围绕一个可验证问题:提出假设 → 读官方材料和对应源码 → 固定版本建立基线 → 收集 trace → 单变量改动 → 校验正确性和性能 → 记录结论与局限。可按阅读 30%、实验 50%、复盘 20% 分配时间。
问题与假设:
来源 / 代码 commit / 软件、驱动与硬件版本:
模型 / 数据 / shape / dtype / 执行命令:
预热 / 重复次数 / 计时与同步方式:
正确性或质量判据:
基线 / 对照 / 原始数据与 trace:
结论 / 代价 / 适用范围 / 下一步:
论文结果是具体实验条件下的证据,应在自己的负载上重新验证。
9. 必须练习的估算与指标
- 参数内存:参数量 × 每参数字节数;训练还需梯度、优化器状态、激活和工作区。
- KV Cache:常规 Transformer 可粗估为
2 × 层数 × KV 头数 × head_dim × 缓存 token 总数 × 每元素字节数。分页、分片、量化和特殊注意力结构会改变实际占用,不能对所有模型直接套用。 - 算术强度:FLOPs / 搬运字节数,结合可达带宽与计算吞吐判断瓶颈。
- 强扩展效率:固定总工作量时为
单设备耗时 /(设备数 × 多设备耗时),明确 batch 和优化语义。 - 服务容量:给定延迟和失败率目标下的成功吞吐,注明负载分布和缓存条件。
- 成本:按成功请求或有效输出 token 计算,说明是否包含空闲、存储与网络。
10. 硬件不足时的替代路径
| 条件 | 可以完成 | 验证边界 |
|---|---|---|
| 仅 CPU | 小模型、数据流水线、服务、源码、CPU 多进程通信 | 不推断加速卡性能 |
| 单 GPU | 显存、算子、推理压测与框架分析 | 多卡扩展另行验证 |
| 单 MLU | 环境允许时做迁移、精度、算子与性能 | 先确认 SDK、驱动和模型支持 |
| 多设备 | 分布式、通信、拓扑和恢复 | 单机结果不代表多机结果 |
优先利用现有设备;租用前先确定实验、显存、预算与停止条件,无需为学习先部署完整生产系统。
11. 完成标准
- [ ] 能画出一次训练或推理的端到端路径。
- [ ] 能估算内存、计算与通信,解释实测差异。
- [ ] 能用 trace 定位瓶颈并完成正确性和性能对照。
- [ ] 能说明优化在哪些 shape、负载和硬件上不适用。
- [ ] 能交付他人可复现的项目,展示故障或退化案例。
- [ ] 能按目标岗位解释硬件效率、训练效率或服务可靠性的取舍。
完成后选择算子与编译、框架适配、训练系统、推理引擎、平台工程或数据检索中的一个方向继续深入。
资料检索日期:2026-10-20。来源以官方文档、作者论文和项目仓库为主;滚动文档和依赖可能变化,实验应固定版本。寒武纪课程目录搜索结果可读,本次直接打开超时,具体课程与资源获取要求以实际访问时为准。