首页/AI/大模型部署与运维速查/读懂 PyTorch OOM 报错文本
本包目录(267 条)
部署形态与选型43 条推理环境与 GPU50 条推理参数与优化50 条显存与并发估算40 条服务化与网关34 条
运维监控与排障50 条

读懂 PyTorch OOM 报错文本

torch.cuda.OutOfMemoryError 消息带完整显存账单:申请大小、卡容量、空闲、已分配与已保留;分清 allocated(活跃张量)与 reserved(分配器持有),判断是容量问题还是碎片问题。

报错文本结构(示意)

报错文本结构(示意)
CUDA out of memory. Tried to allocate 2.34 GiB.
GPU 0 has a total capacity of 79.65 GiB of which 1.98 GiB is free.
77.50 GiB is allocated ... 77.56 GiB is reserved ...
64.00 MiB is reserved by PyTorch but unallocated
allocated当前活跃张量占用
reserved分配器向驱动保留的总量,含缓存块
free驱动层面仍可分配的量
reserved but unallocated缓存块;数值大且申请失败=碎片信号

碎片缓解(先在预发验证)

碎片缓解(先在预发验证)
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
expandable_segments 的兼容性随 CUDA 与框架版本而异:确认本环境支持后再用于生产。

易错点

  • 把 reserved 当成真实占用去加卡:其中大块是分配器缓存,重启或改参数即可回收

数据来源与参考

  • PyTorch 官方文档:torch.cuda memory management(docs.pytorch.org)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌