Cuda和PyTorch的内存使用

3

我正在使用 CudaPyTorch:1.4.0

当我尝试增加 batch_size 时,出现以下错误:

CUDA内存不足。尝试分配20.00MiB(GPU 0;总容量4.00GiB;已分配2.74GiB;剩余7.80MiB;PyTorch总共保留了2.96GiB)

我没有找到有关Pytorch内存使用的任何信息。

此外,我不明白为什么只有7.80 mib可用?

我应该只是使用性能更好的显卡,还是可以释放一些内存?值得一提的是,我有一张GTX1050 TI,Python 3.7和torch==1.4.0,我的操作系统是Windows 10。


8
请勿将错误消息发布为图像。这些消息无法被未来的访问者搜索到。 - talonmies
1个回答

4
我遇到了同样的问题,以下方法对我有用:
torch.cuda.empty_cache()
# start training from here

即使如此,如果您仍然遇到错误,则应减少 batch_size


2
为了补充,可以使用终端上的 nvidia-smi 命令来检查 GPU 内存。此外,如果您正在将张量存储在 GPU 上,可以使用 tensor.cpu() 将它们移动到 CPU 上。我使用这些命令解决了大部分内存问题。 - André Pacheco

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接