问题现象 为了调试dataloader的代码,设置了worker数为0,其它参数没改,结果本来能运行的pytorch训练程序,现在触发了显存OOM。 原因分析 同样batch size的情况下,worker=0相比于worker>0会导致更多的显存占用,可能是程序会将缓存的数据都加载到显存上。解决方法也很简单: worker=0,降低batch sizebatch size不变,设置worker>0