云服务器内容精选

  • 原因分析及处理方法 查看训练作业的“日志”,出现报错“MoxFileNotExistsException(resp, 'file or directory or bucket not found.')”。 原因:Moxing在进行文件复制时,未找到train_data_obs目录。 处理建议:修改train_data_obs目录为正确地址,重新启动训练作业。 另外在Moxing下载OBS对象过程中,不要删除相应OBS目录下的对象,否则Moxing在下载到被删除的对象时会下载失败。 查看训练作业的“日志”,出现报错“CUDA capability sm_80 is not compatible with the current PyTorch installation.The current PyTorch install supports CUDA capabilities sm_37 sm_50 sm_60 sm_70'”。 原因:训练作业使用的镜像CUDA版本只支持sm_37、sm_50、sm_60和sm_70的加速卡,不支持sm_80。 处理建议:使用 自定义镜像 创建训练作业,并安装高版本的cuda以及对应的PyTorch版本。 查看训练作业的“日志”,出现报错“ERROR:root:label_map.pbtxt cannot be found. It will take a long time to open every annotation files to generate a tmp label_map.pbtxt.”。 如果使用的是AI Gallery订阅的算法,建议先检查数据的标签是否有问题。 如果使用的是物体检测类算法,建议检查数据的label框是否为非矩形。 物体检测类算法仅支持矩形label框。 查看训练作业的“日志”,出现报错“RuntimeError: The server socket has failed to listen on any local network address. The server socket has failed to bind to [::]:29500 (errno: 98 - Address already in use). The server socket has failed to bind to 0.0.0.0:29500 (errno: 98 - Address already in use).”。 原因:训练作业的端口号有冲突。 处理建议:更改代码中的端口号,重启训练作业。 查看训练作业的“日志”,出现报错“WARNING: root: Retry=7, Wait=0.4, Times tamp=1697620658.6282516”。 原因:Moxing版本太低。 处理建议:联系技术支持将Moxing版本升级至2.1.6及以上版本。
  • 处理方法 需要排查执行命令的启动文件目录是否正确,具体操作如下: 在ModelArts管理控制台,使用训练的自定义镜像创建训练作业时,“创建方式”选择“自定义算法”,“启动方式”选择“自定义”。 例如,当训练代码启动脚本在OBS路径为“obs://bucket-name/app/code/train.py”,创建作业时配置代码目录为“/bucket-name/app/code/”。则代码目录配置完成后,执行如下命令,那么“run_train.sh”将选中的“code”文件夹下载到训练容器的“/home/ma-user/modelarts/user-job-dir”目录中。 bash /home/ma-user/modelarts/user-job-dir/run_train.sh #训练自定义镜像-预置命令场景 运行命令就可以设置为: bash /home/ma-user/modelarts/user-job-dir/run_train.sh python /home/ma-user/modelarts/user-job-dir/code/train.py {python_file_parameter} #训练自定义镜像-预置命令场景
  • 处理步骤 查询训练作业的日志和监控信息,是否存在明确的OOM报错信息。 是,训练作业的日志里存在OOM报错,执行2。 否,训练作业的日志里没有OOM报错,但是存在监控指标异常,执行3。 排查训练代码是否存在不断占用资源的代码,使得资源未被合理使用。 是,优化代码,等待作业运行正常。 否,提高训练作业使用的资源规格或者联系技术支持。 重启训练作业,使用CloudShell登录训练容器监控内存指标,确认是否有突发性的内存增加现象。 是,排查内存突发增加的时间点附近的训练作业日志,优化对应的代码逻辑,减少内存申请。 否,提高训练作业使用的资源规格或者联系技术支持。
  • 处理步骤 进入状态“运行失败”的训练作业详情页,单击“日志”页签,查看NCCL报错。 若出现报错“NCCL timeout”或者“RuntimeError: NCCL communicator was aborted on rank 7”,则表示InfiniBand Verbs超时。单击右侧“重建”,重新创建训练作业,设置环境变量“NCCL_IB_TIMEOUT=22”,提交训练作业后等待作业完成。 若出现报错“NCCL WARN Bootstrap : no socket interface found”或“NCCL INFO Call to connect returned Connection refused, retrying”,则表示NCCL无法找到通信网卡或者是无法正常访问IP地址。需要排查训练代码中是否有设置NCCL_SOCKET_IFNAME环境变量,该环境变量由系统自动注入,训练代码中无需设置。训练代码去除NCCL_SOCKET_IFNAME环境变量设置逻辑后,单击右侧“重建”,重新创建训练作业,提交训练作业后等待作业完成。 等待训练作业是否变成“已完成”状态。 是,故障处理完成。 否,则联系技术支持排查节点状态。
  • 问题现象 训练作业的状态“运行失败”,查看训练作业的“日志”,存在NCCL的报错,例如“NCCL timeout”、“RuntimeError: NCCL communicator was aborted on rank 7”、“NCCL WARN Bootstrap : no socket interface found”或“NCCL INFO Call to connect returned Connection refused, retrying”。