gpulab是一个提供付费gpu的平台,其接口源自jupyterlab(一种升级版的jupyternotebook),因此可透过网页接口提供完整的python ide接口,除了基本的notebook,也有terminal、console可用,因此使用起来比起colab更为方便。
该产品是由一家位于美国加州的deasil works公司所提供,主要业务提供ai、data science等方面的技术咨询。
计费方式
目前提供三种plan,但主要在于购买周期的差异,硬件及执行环境完全相同。三种计费周期为日、周、月,信用卡付款,期限到自动扣款续约。
提供的gpu执行环境
比较值得关心的是gpu执行环境及配置:
1.gpu硬件:tesla k80 x1,11mb
2.cuda 10.02
3.ubuntu 18.04
4.tensorflow 2.3
5.pytorch 1.8
6.无法sudo (无root权限)
7.可使用terminal或jupyternotebook来执行程序,或管理/安装移除相关套件。
8.storage空间无论任何方案皆为25gb。
9.环境及档案可持久保持,不像colab,kaggle在超过时数后便自动清空。
tesla k80其实是由两个k40核心所组成一片24gb的k80,在环境中看到的是两片各为12gb的gpu,由于其架构较老旧,速度在tf1.6测试下仅达gtx 1080一半(参考下图)。
硬件规格与gtx 1080比较如下:
(https://www.reddit.com/r/deeplearning/comments/5mc7s6/performance_difference_between_nvidia_k80_and_gtx/)
k80已是八-九年前的产品,使用的framework为kepler(gtx 1080为差了两代的pascal,3080以后系列为差了五代的ampere),从nvidia的规划(https://zh.wikipedia.org/wiki/cuda)来看,kepler只支持到cuda 10.2,不支持最新的cuda11.0之后版本。但测试结果,安装了cuda 11.0之后,还是能在gpulab的k80 gpu执行训练,这部份请参考后续说明。
gpulab的使用接口
注册账号,选择要购买的方案种类,使用信用卡缴费后,便会自动设定好环境马上便能使用。
gpulab environment的界面
点选notebook中的python3,会于目前目录(可从左侧窗口的档案总管切换)新建一个notebook。
点选console中的bash,会进入一个可下方命令栏输入bash command的窗口。
点选others中的terminal,出现一个类似putty接口的终端窗口。
输入nvidia-smi
输入ls -la /usr/local/cuda,发现cuda版本是10.1
升级cuda为最新版的11.03
如果想要使用较新的tensorflow 2.5,那么必须要升级cuda到最新版本11.x才行,不过目前gpulab仅支持10.3,官方解释要等到下一版(约在2021年七月底或八月左右)才有支持。如果打算自己安装升级,会发现gpulab并没有开放sudo root权限,想要升级到11.x版似乎有些困难。
但其实,cuda/cudnn安装也可以用户模式来安装,不一定需要root权限。
下载cuda 11.4
url//developer.nvidia.com/cuda-downloads?target_os=linux&target_arch=x86_64&distribution=ubuntu&target_version=18.04&target_type=runfile_local
$ wgethttps://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda_11.4.0_470.42.01_linux.run
安装cuda 11.4
$ chmod755 cuda_11.4.0_470.42.01_linux.run
# ./cuda_11.4.0_470.42.01_linux.run
安装时取消nvidia driver的安装,并修改安装路径到个人家目录下。(例如:/home/jovyan/cuda-11.4)
安装结束后,于相同路径下新增soft link cuda指向cuda-11.4。
加入path到.bash_profile
exportcuda_home=/home/jovyan/cuda
使用pip升级tensorflwo-gpu及pytorch
pipinstall -u tensorflow-gpu torch torchvision torchaudio
将下方三行加到~/.bash_profile
exportld_library_path=/home/jovyan/cuda/lib64:/home/jovyan/cuda/extras/cupti/lib64/:${ld_library_path}
exportlibrary_path=${library_path}:/home/jovyan/cuda/lib64:/home/jovyan/extras/cupti/lib64:/home/jovyan/cuda/targets/x86_64-linux/lib
从nvidia下载解压cudnn,并将档案复制到 ~/cuda相对应路径下。
测试
开启一个terminal,import tensorflow,确认可使用11.x版的cuda。
ps. 此方法仅对于terminal环境有效,在jupyternotebook环境可在一开始就先执行:
!source ~/.bash_profile
之后,pytorch便能使用到新版cuda了,但tensorflow还不行。
心得
优点:
1.以每月不到三百元的价格,能使用不限时数11gbram的gpu,且已预先装好所有可用的模块,感觉相当划算。
2.若您仅需jupyter notebook接口进行基本的模型测试及训练,gpulab所提供的环境已足敷使用。
3.可同时从不同pc登入portal(看到相同执行画面),亦可同时执行数个程序,只要disk space及gpu usage没有超过用量。
4.从gpulab环境存取internet的速度快,例如,从kaggle透过api下载dataset比在自己pc快相当多。
5.提供的terminal接口与notebook搭配使用相当方便。
缺点:
1.提供的k80 gpu速度不是很令人满意,以训练一个参数为600,612的keras unet模型来说,在最新gtx 3080 gpu每epochs约117 s,k80则需要383 s,两者差距了三倍之多。
2.提供的disk space仅有25gb,一次无法放置太多数量的dataset。
3.无sudo的root权限,因此,无法自行控制或修改更多的环境配置。
4.预载的cuda仅支持到10.3,虽可自行升级到cuda11.x,但会占用到disk quota(约8g)。
5.环境未安装libopencv-dev套件,且也无法透过sudoapt-get install libopencv-dev 自行安装,这使得训练yolo的darknetframe在编译时若enableopencv,会产生error。
壹沓科技助力直播电商行业“数字化”转型,制胜双十二
小米Note2第一次现货开卖!双曲面+OLED售2799元
电压变化对无功补偿设备有影响吗
在不久的将来电动汽车将会取缔燃油车的地位
abb变频器最低频率设置
比Colab更方便的GPU平台-GPUlab
CAN协议数据帧的介绍
越来越多竞争者纷纷入局,工业物联网平台会走向垄断吗?
「含源码」关于NXP IMX8 Mini的图形开发指南(GPU)案例分享!
热参数如何与PCB温度或IC结温进行比较
特锐祥贴片Y电容有哪些优势?4大优势介绍!
浅谈 | 高低温环境下的车载屏幕功能耐久与触屏精度自动化测试
固态继电器原理及选型
光学轮廓仪检测原理是什么
大疆推出了旗下首款手机飞行云台
PCB板三防漆可靠性试验的注意事项
OPPO在ETSI宣称已经拥有了600项5G标准专利
LT8711 Type-C/DP1.2至HDMI1.4转换器简介
三星S8和小米MIX哪个好? 三星S8和小米MIX对比评测
中国的5G建设带动了5G产业链生产规模的快速增长