明明显存足够但是报错CUDA out of memory的问题

跑yolov5的时候遇到的这个问题,调小batch-size=1都没用,num workers调成1也没用,数据集减小到只有50张图片都跑不动,而且也不是由于多卡训练的问题(我电脑就一张显卡)。换个同样配置的电脑能跑,昨天还能跑今天突然跑不动了。错误显示Tried to allocate 64.00 MiB ,但是2Gib free,这里我就不配图了没有存,言下之意就是说我还有2GB空闲显存,但是加载64mb就报错了,这里空闲显存指的是已经去除pytorch预留显存的空闲现存。

解决过程:

一开始以为是有后台进程在占用内存,结果无论是任务管理器还是nvidia-smi都显示没有问题,

后来又认为是CUDA或者cudnn的问题,卸载重装CUDA没用,本来是报CUDA out of memory,后来又报broken pipe,

后来以为是tensorflow和pytorch冲突。一番调试还是没用。

解决方法:

最后发现是环境问题,应该是由于昨天在开发的时候不知道加了什么模块进去导致的冲突,我一直又备份环境的习惯,把最初的环境重新放到anaconda的env中,删掉了有问题的环境,可以跑了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值