最近跑模型自己电脑算力不够,看了看显卡疯涨的价格又舍不得买卡,试着去搜了搜市面上的免费算力资源,感觉华为云的ModelArts很好用,目前免费提供的算力资源也很NB,56G内存(是内存!)还有Tesla P100 16G的显卡,可是过程略有点会踩坑,这里写下个人使用心得,供大家一起交流讨论。
我用的比较简单暴躁,直接就是想用自己的代码跑自己的数据集。所以只用到了华为云中的OBS Browser+存储数据,ModelArts中的JupyterLab来跑代码,两者互通,废话不多说,上教程
前置事情准备好之后进入ModelArts控制台,进入方式如图。
进入控制台之后我们要做两件事,第一件事是上传数据,第二件事是跑代码(如果数据集小于100兆可以直接后面跟代码一起上传),那么我们先开始第一件事,上传数据。
华为云这里使用的OBS存储数据,注意是收费的,但是很便宜,一个G一个月就几毛钱吧,充个一块钱就可以了,不然会报欠费。
首先在服务列表中搜索OBS点击进入,再点击右上角创建桶。
配置桶的话都默认就好,主要就是桶名称全网唯一,不能重复。创建完成之后为了方便上传文件建议下载一个OBS Browser+
下载安装之后登录,这里登录的用户名和密码跟华为云不统一,可以自己选择登录方式,我这里选择的是AK登录,AK登录里账号名不是华为云账号名,可以随意填,保持统一就行,关于如何获取AK和SK,华为云官方有指导,这里贴上链接,不再赘述。
https://support.huaweicloud.com/clientogw-obs/obs_03_0405.html
登录成功之后就是简单的创建文件夹,上传文件之类的常规操作,压缩包记得上传zip格式,不要上传rar,后面不然会麻烦。
数据先上传着,我们再去看如何跑代码。
返回ModelArts控制台,点击开发环境,打开notebook控制界面,点击创建。
创建页面主要就是选择GPU限时免费那个就行了,此处因为我已经创建了一个所以不可选。
点击下一步创建完成后点击打开JpyterLab进入命令控制页面。
这里我自己主要用到这两个功能,Notebook那个像我们用Jupyter一样使用,Terminal就是正常的Linux环境下的控制台。我们先打开TensorFlow-1.8那个,把存在OBS里面的文件copy过来。
打开Jupyter我们输入以下代码
import moxing as mox
mox.file.copy_parallel('obs://xxx/xxx/', '/home/ma-user/work')
前面的obs是你数据在obs里面存放的位置,直接复制过来即可
执行完毕后,点击左侧刷新按钮我们就可以看到文件已经被复制过来了
再然后我们点击左侧加号后再选择打开terminal就可以像操作自己的Linux系统电脑一样去操作了。
至此,结束。
注意目前ModelArts是限时免费,每一小时会自动关闭需要重新打开,关闭后文件都还在,需要自己重新启动运行一下就好。