model.to(device)那里报错RuntimeError: CUDA error: out of memory

时间:2024-04-04 22:27:23

试了很多方法,什么减小batch size,什么模型与pytorch不匹配,还有损失函数和梯度存储的方法,都没解决。

可能一些人的情况和我一样:就是和别人共用一台实验室服务器,别人的实验太吃显存了,这时候可以在服务器的linux命令行输入:
watch -n 10 nvidia-smi 查看显存使用情况

红色框框是显存使用情况,可以看出我用的服务器没啥显存了,是没有办法把模型放到gpu上面的。

当然假如你的服务器有多个gpu,那可以用:device = torch.device(“cuda:0” if torch.cuda.is_available() else “cpu”)来改变你的gpu,我这里只有一个,所以是0,你有多个的话,哪个显存剩的多用哪个(0到n)。

但是如果和我一样只有一个gpu,那可能需要和你的同学商量一下,让你跑会儿实验了。

model.to(device)那里报错RuntimeError: CUDA error: out of memory