第06讲:PyTorch 计算图与 Autograd 显存生命周期——动态 DAG、反向求导机制与 Activation 显存优化

🏛️ 第06讲:PyTorch 计算图与 Autograd 显存生命周期——动态 DAG、反向求导机制与 Activation 显存优化 主讲人:👓 Ringi(大厂 AI Infrastructure 工程师) 所属模块:Module 00: 性能工程与系统前置 篇章范式:🏛️ 性能工程与系统前置篇(Performance Engineering & System Baseline) 核心导读:很多做深度学习开发的同学都有过这样的痛苦经历:明明自己的模型只有 7B 参数,按照 FP16 精度手算权重只有 14GB,理论上一张 80GB 的 A100/H100 显卡能够轻轻松松塞下,然而只要把训练的 Batch Size 从 2 调到 4,或者把序列长度 Sequence Length 稍微拉长一点,终端就会瞬间无情地抛出 torch.cuda.OutOfMemoryError(俗称 OOM 爆显存)! 显存到底被谁吃掉了?为什么前向计算时显存会一路飙升,反向传播时显存又逐步回落?PyTorch 在后台悄悄创建的“动态计算图(DAG)”究竟是什么数据结构?为什么有些张量在前向计算完后必须死死留在显存中不能被释放?为什么随手写一句 losses.append(loss) 就能瞬间引发吞噬上百 GB 显存的静默内存泄漏?本讲将带你彻底穿透 Python 外壳,深入 PyTorch C++ 核心库(torch/csrc/autograd),手拆动态图构建、反向求导流水线、张量显存生命周期与 Activation Checkpointing(激活值重计算)的底层奥秘! ...

August 27, 2026 · 58 min · 28751 words · Ringi Lee