尽管我删除了变量,但训练后Colab RAM几乎已满

时间:2020-04-25 17:58:21

标签: python deep-learning google-colaboratory ram

最近,我正在使用Google Colab GPU训练模型。训练后,我删除了用于训练的大变量,但是我注意到滑枕仍然很满。我想知道到底发生了什么,RAM中到底有什么?如何在不重新启动的情况下释放RAM?

2 个答案:

答案 0 :(得分:0)

关于GPU内存,请参阅This Question(之前为我工作的子进程解决方案和numba GPU内存重置):

CPU内存通常用于GPU-CPU数据传输,因此这里无事可做,但是您可以通过以下简单技巧获得更多内存:

a=[]
while True:
    a.append('qwertyqwerty')

colab运行时将停止并为您提供增加内存的选项。

深度学习愉快!

答案 1 :(得分:0)

我认为变量本身不会占用太多内存。

如果有选择,可以试试colab pro。然后,您将可以选择访问高内存 VM(请参阅 here)。价格为 9.99 美元/月。

一个(可能不是很好)是使用较小的数据集。请注意,您的磁盘空间比 RAM 多得多。我所做的是将原始数据集拆分为几个较小的集合,然后用这些数据集训练神经网络。

另一种方法是检查你的代码,看看是否有一些变量存储了大数组,但你只用了一次。然后您可以将这些变量设置为零或空列表。就像:

a = np.load("a_very_large_array.npy")
foo(a) # use array a only here
a = []