AI 系统性能剖析、死锁诊断与状态审计实战

5 课从 Nsight 全链路 Timeline 归因到分布式通信死锁与底层状态审计

性能剖析、死锁诊断与状态审计核心线

大模型、自动驾驶和具身系统的代码通常经过多层框架封装,有些还由 AI Code Agent 生成。遇到吞吐不达预期、进程挂起、数值突然出现 NaN/Inf 时,上层框架日志往往定位不到原因。

这时需要绕过封装,直接读硬件执行时间线(Timeline)、分布式通信流和内存不变量。本模块练三件事:微秒级耗时归因、通信死锁定位、底层状态审计。

学习目标

完成本系列 5 课实战后,你将具备:

  1. Nsight Systems (nsys) 全链路归因能力:熟练解读系统级 Timeline,逐帧诊断 CPU Launch 开销、CUDA Stream 调度、Host-Device 同步气泡(.item()、cudaFree 隐式同步)并予以消除;
  2. Nsight Compute (ncu) 算子微架构调优能力:掌握 Roofline 模型与 Speed-of-Light (SOL),定位 SM 活跃度瓶颈、指令发射停顿(Stalls)与访存冲突;
  3. 分布式通信死锁逆向定位能力:能够通过 NCCL_DEBUG 日志、py-spy 与 GDB 堆栈回溯,逆向还原多卡环形/树形通信挂起、P2P 异步死锁与 CUDA Stream 交叉依赖链;
  4. 低精度数值稳定性与溢出排查能力:基于 IEEE 754 编码,排查 FP8 / FP16 窄动态范围下的下溢、梯度消失与 NaN 级联,掌握轻量级片上数值异常探测器设计;
  5. 底层不变量审计与状态自愈能力:针对 AI 辅助生成代码中常见的隐式隐患(IPC 句柄泄露、异步流悬空、跨进程显存未对齐),构建生产级状态巡检断言与运行时容错机制。

推荐学习路径

第 1 课 · Nsight Systems

从 Timeline 找 CPU 发射间隙与隐式同步

第 2 课 · Nsight Compute

用 SOL 与 Roofline 定位 kernel 瓶颈和 stall 原因

第 3 课 · 通信死锁

用 NCCL 日志、py-spy、GDB 还原挂起现场

第 4 课 · 数值稳定性

排查 FP8/BF16 下溢、溢出与 NaN 传播

第 5 课 · 不变量审计

检查 IPC 泄漏、流同步缺失与对齐问题

图 0-1:本模块五课的顺序与重点


课程目录

课程名称 核心技能与产出
第 1 课:Nsight Systems 全链路 Timeline 逐帧归因诊断实战 掌握系统级性能 Trace 分析,消除 Host-Device 隐式同步气泡与 CPU 下发延迟
第 2 课:Nsight Compute 算子微架构瓶颈逐级归因 掌握 Speed-of-Light 指标与 Roofline 模型,定位指令发射停顿与访存瓶颈
第 3 课:分布式通信死锁逆向定位与状态还原 掌握 NCCL 通信挂起逆向排查、P2P 循环等待还原与 GDB/Py-Spy 联合断症
第 4 课:FP8/BF16 浮点数值精度异常、下溢与 NaN 排查 掌握低精度浮点动态范围裁剪规律、级联 NaN 定位与片上数值探测器
第 5 课:Code Agent 时代底层不变量审计与状态自愈 构建系统级守卫断言,排查 IPC 显存泄露、异步流野指针与状态机错位