华为云AI开发平台ModelArts训练作业使用MoXing拷贝数据较慢,重复打印日志_云淘科技

问题现象

ModelArts训练作业使用MoXing拷贝数据较慢。
重复打印日志 INFO:root:Listing OBS。

图1 重复打印日志

原因分析

拷贝数据慢的可能原因如下:

直接从OBS上读数据会造成读数据变成训练的瓶颈,导致迭代缓慢。
由于环境或网络问题,读OBS时遇到读取数据失败情况,从而导致整个作业失败。

重复打印日志,该日志表示正在读取远端存在的文件,当文件列表读取完成以后,开始下载数据。如果文件比较多,那么该过程会消耗较长时间。

处理方法

在创建训练作业时,数据可以保存到OBS上。不建议使用TensorFlow、MXNet、PyTorch的OBS接口直接从OBS上读取数据。

如果文件较小,可以将OBS上的数据保存成“.tar”包。训练开始时从OBS上下载到“/cache”目录,解压以后使用。
如果文件较大,可以保存成多个“.tar”包,在入口脚本中调用多进程进行并行解压数据。不建议把散文件保存到OBS上,这样会导致下载数据很慢。
在训练作业中,使用如下代码进行“.tar”包解压:

import moxing as mox
import os
mox.file.copy_parallel("obs://donotdel-modelarts-test/AI/data/PyTorch-1.0.1/tiny-imagenet-200.tar", '/cache/tiny-imagenet-200.tar')
os.system('cd /cache; tar -xvf tiny-imagenet-200.tar > /dev/null 2>&1')

父主题: MoXing

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家