谷歌 Colab 存储

Posted

技术标签:

【中文标题】谷歌 Colab 存储【英文标题】:Google Colab Storage 【发布时间】:2019-04-01 01:53:25 【问题描述】:

有人知道运行 Google Colab 的存储限制吗?上传 22gb zip 文件后,我似乎空间不足,然后尝试解压缩,提示

【问题讨论】:

链接***.com/questions/50260565/… “仅使用 GPU 运行时”不再起作用(或者可能不再需要),但我会考虑编写一些自定义数据加载器,它们使用 zipfile 直接从存档加载数据。解压例如无论如何,COCO 数据集都需要永远,即使你有存储空间。 【参考方案1】:

是的,Colab 笔记本的本地存储空间目前约为 40 GiB。查看确切值的一种方法(在 Python 3 中):

import subprocess
p = subprocess.Popen('df -h', shell=True, stdout=subprocess.PIPE)
print(str(p.communicate()[0], 'utf-8'))

但是:对于大量数据,本地存储不是直接连接到运行笔记本电脑的机器的 TPU 的非最佳方式。相反,请考虑将您的大型数据集存储在 GCP 存储中,并从 Colab 笔记本中获取该数据。 (此外,Colab 本地存储量可能会发生变化,Colab 笔记本本身会在几个小时后过期,同时占用本地存储。)

看看the canonical TPU Colab notebook。底部是一些后续步骤,其中包括指向Searching Shakespeare with TPUs 的链接。该笔记本中有以下代码片段,它演示了对 Colab TPU 的 GCP 身份验证。它看起来像这样:

from google.colab import auth
auth.authenticate_user()

if 'COLAB_TPU_ADDR' in os.environ:
  TF_MASTER = 'grpc://'.format(os.environ['COLAB_TPU_ADDR'])

  # Upload credentials to TPU.
  with tf.Session(TF_MASTER) as sess:    
    with open('/content/adc.json', 'r') as f:
      auth_info = json.load(f)
    tf.contrib.cloud.configure_gcs(sess, credentials=auth_info)
  # Now credentials are set for all future sessions on this TPU.
else:
  TF_MASTER=''

【讨论】:

@DerekT.Jones 我在 colab 中使用 keras,而不是纯 tensorflow。这意味着我没有声明tf.session。上面的代码是否也适用于我的情况?【参考方案2】:

目前,colab 中的本地存储量取决于所选的硬件加速器运行时类型:

# Hardware accelerator none
!df -h .
Filesystem      Size  Used Avail Use% Mounted on
overlay          49G   22G   26G  46% /

# Hardware accelerator GPU
!df -h .
Filesystem      Size  Used Avail Use% Mounted on
overlay         359G   23G  318G   7% /

# Hardware accelerator TPU
!df -h .
Filesystem      Size  Used Avail Use% Mounted on
overlay          49G   22G   26G  46% /

即使您不需要 GPU,切换到该运行时类型也会为您提供额外的 310Gb 存储空间。

【讨论】:

感谢您的更新。是的,仅将 GPU 用于额外存储是有意义的。 “资源不保证”。今天,2020-09-20,我尝试了 GPU 实例,我得到了大约 70GB 的覆盖空间,而硬件加速器没有得到大约 110GB 的空间。这一切都说,它是超级 YMMV! 今天我得到了 108GB 69GB 108GB。

以上是关于谷歌 Colab 存储的主要内容,如果未能解决你的问题,请参考以下文章

凭证 JSON 文件到谷歌 colab

在数组中导入数据集时,谷歌 colab 中的 ram 用完了

如何将图像从谷歌驱动器导入谷歌 colab

分享使用谷歌Colab 常用小tips(真的很有用)

将本地文件导入谷歌 colab

谷歌colab中的包