DataLoader的num_workers设置引起卡死/堵塞/报错,第一个epoch前几个iteration就卡住了,没有报错,内存不释放,GPU利用率为0

“我的情况好像很特殊。系统是centos7,pytorch版本是1.8.0,我刚把这些软件装上时,运行了一下自己的训练代码,可以运行,没有问题。但是过了几天之后,再重新跑,就不行了,卡在了for i, data in enumerate(dataset, start=epoch_iter):
print(i),就卡在那里不动了,必须用kill命令来杀。我的代码中根本没有用到opencv,而且网上说的什么共享内存不足之类的,我查了下,根本不存在,我的共享内存才利用很小一部分。把num_workers设为0倒是可以成功运行,但是训练的速度明显慢了很多。这个问题真是让人抓狂,好好的代码本来能运行,什么都没动过几天就出问题了,太奇怪了。在网上搜索了很多,基本上都试过了,还是解决不了,我估计应该还是多线程的问题,但是就是搞不清楚问题哪里,各位大佬对这个问题有没有什么比较好的解释,谢谢!。”

上述问题在sudo reboot后遇见,查了相关资料一直没有得到好的解决办法,没有什么合理的解释。

解决办法:创建新的虚拟环境,切过去再切回来。极有可能是reboot让系统默认的环境中的东西出什么错,anyway,先跑起来再说了。有大佬发现是啥问题了麻烦解释一下,谢谢!!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值