第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

第05讲:PyTorch 底层系统机制——Tensor 内存布局、Stride 与 Contiguous

🏛️ 第05讲:PyTorch 底层系统机制——Tensor 内存布局、Stride 与 Contiguous 主讲人:👓 Ringi(大厂 AI Infrastructure 工程师) 所属模块:Module 00: 性能工程与系统前置 篇章范式:🏛️ 性能工程与系统前置篇(Performance Engineering & System Baseline) 核心导读:在许多深度学习初学者的直觉中,Tensor 就像一个立体透明的"多维魔方",我们在 Python 中调用 transpose、permute、view 似乎是在三维甚至高维空间中随意旋转和切割这个魔方。但在底层物理硬件和操作系统眼中,物理内存和显存永远都只是一条从低地址向高地址线性延伸的一维连续字节数组(1D Storage Buffer)! PyTorch 究竟用了什么精妙的元数据机制,让这个一维数组在 Python 上层呈现出任意维度的几何形态?为什么一个看似人畜无害的 x.t().view(-1) 会引发 RuntimeError 运行时崩溃?为什么随手加一句 .contiguous() 能解决报错,却可能在千卡集群上引发数十 GB 显存的隐式拷贝风暴与 GPU 吞吐腰斩?本讲带你从 C10/ATen 源码与计算机体系结构第一性原理出发,彻底穿透 Tensor 内存布局、Stride 步长投影与 GPU 访存合并(Memory Coalescing)的底层奥秘! ...

August 25, 2026 · 43 min · 21357 words · Ringi Lee

AI分布式训

AI分布式训训练库 常见框架 常见分布式训练框架: 第一类:深度学习框架自带分布式训练功能。如:TensorFlow、PyTorch、MindSpore、Oneflow、PaddlePaddle等。 第二类:基于现有深度学习框架(如:PyTorch、Flax)进行扩展和优化,从而进行分布式训练。 如:Megatron-LM(张量并行)、DeepSpeed(Zero-DP)、Colossal-AI(高维模型并行,如2D、2.5D、3D)、Alpa(自动并行)等 LLM 训练/微调工具 ...

December 05, 2025 · 60 min · 29560 words · Ringi Lee