mmaction2-RuntimeError: CUDA error: out of memory
提示:bug

问题描述
遇到的问题:
在程序中设置用2号卡,但运行后报错 ”CUDA error out of memory",

检查发现2号卡内存没问题。
在终端输入:
gpustat --w
查看运行时的内存走向
发现运行时mmaction先默认在0号卡上运行,但由于这里0号卡内存满了所以报错,至此解决方向为将程序一开始就放在指定gpu上运行
解决方案:
网上解决方法为:
import os
os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
os.environ["CUDA_VISIBLE_DEVICES"] = "2"
但是关键是:这条语句一定要放在程序的最前面,一定要放在最前面!一定要放在最前面!一定要放在最前面!
运行成功!
程序在运行时默认使用了内存满的GPU0号卡导致CUDA错误,通过设置环境变量CUDA_VISIBLE_DEVICES为2号卡,确保程序从开始就在指定GPU上运行,解决了内存问题。关键在于设置环境变量的代码需置于程序开头。
694

被折叠的 条评论
为什么被折叠?



