Google Colab上的GPU内存不足错误消息

时间:2020-01-17 14:10:45

标签: memory gpu google-colaboratory

我正在Google Colab上使用GPU来运行一些深度学习代码。

我已经完成了70%的培训,但是现在我仍然遇到以下错误:

RuntimeError: CUDA out of memory. Tried to allocate 2.56 GiB (GPU 0; 15.90 GiB total capacity; 10.38 GiB already allocated; 1.83 GiB free; 2.99 GiB cached)

我试图理解这意味着什么。它在谈论RAM内存吗?如果是这样,那么代码应该只像以前一样运行,不是吗?当我尝试重新启动它时,内存消息立即出现。为什么今天启动时比昨天或前一天启动时要使用更多的RAM?

这是有关硬盘空间的消息吗?我能理解,因为该代码可以保存所有内容,因此硬盘使用量会累积。

任何帮助将不胜感激。


因此,如果仅仅是GPU的内存不足-有人可以解释为什么错误消息显示10.38 GiB already allocated-当我开始运行某些东西时,如何已经分配了内存。可以被其他人使用吗?我是否需要等待,然后再重试?

这是我运行代码的屏幕快照,该代码恰好在内存不足之前:

enter image description here


我发现this post的人们似乎也遇到类似的问题。当我在该线程上运行建议的代码时,我看到:

Gen RAM Free: 12.6 GB  | Proc size: 188.8 MB
GPU RAM Free: 16280MB | Used: 0MB | Util   0% | Total 16280MB

似乎暗示有16 GB的可用RAM。

我很困惑。

4 个答案:

答案 0 :(得分:3)

您的GPU内存不足。如果您正在运行python代码,请尝试先运行此代码。它将显示您拥有的内存量。请注意,如果您尝试加载大于总内存的图像,它将失败。

<a href="http://{{ company }}.com">Google</a>

答案 1 :(得分:1)

尝试将批量大小减少到 8 或 16。它对我有用

答案 2 :(得分:0)

Google Colab资源分配是动态的,取决于用户过去的使用情况。假设如果一个用户最近使用的资源更多,而一个不常使用Colab的新用户,则在资源分配方面将给予他相对较高的优先权。

因此可以充分利用Colab,关闭所有Colab选项卡和所有其他活动的会话,重新启动要使用的会话。您肯定会获得更好的GPU分配。 如果您正在训练NN仍然遇到相同的问题,请尝试也减小批次大小。

答案 3 :(得分:0)

就像对使用 Google Colab 的其他人的回答一样。当我在深度学习课程中使用它时,我经常遇到这个问题。我开始为 Google Colab 付费,它立即开始允许我运行我的代码。然而,这并不能完全解决问题。我开始使用 Google Colab 进行研究并再次遇到此错误!我开始在 Google Colab 网站上进行研究,发现即使是为 Google Colab 付费的人也有 GPU 使用限制。为了测试这一点,我尝试使用我很少使用的辅助 Gmail 帐户。果然运行完美...

简而言之。与辅助电子邮件共享您的代码或设置一个新的电子邮件帐户。使用辅助帐户登录 Colab。如果这对你们中的任何人都有效,请在下面发表评论,以便人们意识到这一点。我发现它非常令人沮丧,并且因为这个错误而浪费了很多时间。