我想我正在运行tensor pytorch。
我是python新手,尝试用它来试验卷积神经网络和处理更大的图像。但我一直遇到这个错误,即使我要求更小的图像输出。我刚注册了colab pro。虽然它肯定更快,但它仍然会在cuda中出错。如果我知道怎么做,我会重新分配内存,但我不知道。是否有其他方式访问/管理gpu内存??
文件“/usr/local/lib/python3.7/dist packages/torch/autograd.backward(self、gradient、retain\u graph、create\u graph、inputs=inputs)中的255行“/usr/local/lib/python3.7/dist packages/torch/autograd/init.py”,第149行,backward allow\u unreachable=true,累计_grad=true)#允许_无法访问标志运行时错误:cuda内存不足。尝试分配114.00 mib(gpu 0;总容量15.78吉布;13.27已分配的gib;4.75无mib;14.43 pytorch总共保留gib)检测到vgg-19体系结构已成功加载模型/vgg19-d01eb7cb.pth conv1_1:64 3 3 conv1_2:64 64 64 3 3 conv2_1:128 64 3 3 conv2_2:
1条答案
按热度按时间os8fio9y1#
我在下面展示了在pytorch中管理gpu内存的方法,但通常这些方法并不是处理cuda错误的建议方法。
出现此错误的原因与输出的大小无关,而是与输入的大小有关。您可能需要在网络中使用过大的图像
transforms.Resize()
或者你的批量太大了,所以你需要一个巨大的parralel计算,因此需要在dataloader中降低这个数字。从gpu内存中删除Tensor的方法可以使用
将Tensor分配给cuda内存的方法是使用
萨尔塔克贾因