Skip to content

This is a short tutorial on how to use FREE gpu in Colab

Notifications You must be signed in to change notification settings

LL0912/Colab-Tutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 

Repository files navigation

Colaboratory 免费GPU服务器使用教程

RSIDEA 刘寅贺 2019.4.30

近日,Google Colab 官方在Twitter上表示,将为用户提供免费的Tesla T4 GPU,具有16 GB的大显存,2560个CUDA核心,8.1 TFLOPS,图灵架构下使用 Turing Tensor Core技术支持多精度加速(FP32、FP16、INT8 甚至 INT4)可使性能成倍地增长。随着组内越来越多的同学开始研究深度学习的方法,若能使用Colab可在一定程度上缓解组内计算资源紧张的情况。同时在虚拟机上还预装了大多数需要用到的库(TensorFlow,Keras, Pytorch,GDAL……),对新人来说也省去了配置环境的时间,可以直接开搞。并且与GEE的导出数据共用Google Drive的存储,如果能将两大杀器结合可能会有1+1>2的效果。因此写了这个十分粗略的教程帮大家快速地薅到资本主义羊毛。

准备工作

适用人群:

  1. 所用训练集不是特别大(数G以内)。

  2. 数据不存在涉密、有版权等不宜公开的问题。


自行准备:

  1. Google账号。

  2. 翻墙工具,实在没有可以找我用本人搭的代理。


Colab配置:

  1. 进入Google Drive,所有Google用户应该都会开通Google Drive,若第一次使用让勾选隐私协议之类的一路同意即可。

  2. 通过Colab新建一个ipynb文件,现在可能会默认添加了Colab,若更多里没有Colab请参照第3步。

  1. 已有Colab请略过此步。

    选择“更多”中“关联更多应用”,搜索并安装Colab,重复步骤2,此处不多赘述。

  1. 进入该界面表示Colab正常工作。

  1. 在“修改”内“笔记本设置”中将运行时类型设置为Python3,硬件加速器改为GPU。

  1. 运行!nvidia-smi(运行ubuntu命令时只需在前面加上!),若能出现图中结果,说明你成功薅到了资本主义羊毛。

云端训练

  1. 将数据集上传到Google Drive上,这一步是GEE用户的福利,可以跳过。据我测试上传数据集的速度十分感人,尤其当文件个数比较多的情况下更是慢得过分,强烈建议上传单个压缩文件,然后使用CloudConvert解压。首次使用CloudConvert还要注册、提供访问权限,在此不多赘述。

  1. 为了访问google drive上的数据集,运行下面两行代码:

from google.colab import drive

drive.mount('/Drive')

  1. 点击出现的链接,一路下一步,将授权码输入到框内回车。

  1. 出现图中结果表明google drive挂载成功,在左边文件里可以看到云盘的文件夹,对该文件夹的读写相当于直接对云盘内的文件进行操作。需要注意的是,想要访问该文件夹还需要先执行cd..命令。

  1. 接下来怎么利用好这块卡就各凭本事啦。 上述过程可参考该例子。若已有实现好的代码,直接上传至Google Drive中用python命令运行即可。

cd ..
! python file.py

注意事项

理论上Colab会毙掉一些长时间运行的虚拟机,注意保存。不过目前还没有遇到过,实测连续训练7小时没有任何问题。注意:Google Drive的挂载有12小时限制,到时间需要重新挂载。

理论上关闭浏览器代码依旧会在虚拟机中运行,并且据我测试确实是这样,可以比较放心地挂机。但还是不太建议,因为虽然目前还没有没有遇到过,但是如果长时间没有Colab所希望的“交互”,进程可能还是会被杀掉。

About

This is a short tutorial on how to use FREE gpu in Colab

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published