在DLC训练任务中使用云存储

更新时间:2025-03-25 06:46:24

在提交DLC训练任务时,您可以通过代码配置或挂载的方式配置OSS、NAS、CPFSMaxCompute存储,从而方便地在训练过程中直接读写相应存储中的数据。本文为您介绍如何在DLC训练任务中进行OSS、MaxCompute、NASCPFS的存储配置。

前提条件

使用OSS存储

通过挂载方式进行OSS存储配置

在创建分布式训练(DLC)任务时,挂载OSS存储。支持以下几种挂载类型,具体配置方法,请参见创建训练任务image

挂载类型

描述

挂载类型

描述

数据集

通过数据集(自定义数据集或公共数据集)进行挂载,其中:

  • 公共数据集只支持只读挂载模式。

  • 自定义数据集(对象存储OSS)可以通过是否只读开关,来设置读写权限。

选择对象存储OSS类型的数据集,并配置挂载路径,当执行DLC任务时,系统会按照该路径来访问OSS中的数据。

直接挂载

直接挂载OSS Bucket存储路径,并通过是否只读开关,来设置读写权限。

当前DLC底层支持使用JindoFuseossfs来挂载OSS:

  • JindoFuse:默认使用JindoFuse,但使用DLC的默认配置有功能限制(详情请参见JindoFuse),并不适合所有的场景。您可以通过调整参数,来适配具体的场景。具体操作,请参见JindoFuse

  • ossfs:通过直接挂载方式挂载OSS Bucket存储路径时,您可以在高级配置中设置{"mountType":"ossfs"},以使用ossfs方式进行挂载。image

通过非挂载方式进行OSS存储配置

DLC任务支持使用OSS Pytorch ConnectorOSS SDK来读写OSS数据。您可以在创建训练任务时,通过代码配置来配置相关代码文件。具体代码示例,请参见OSS Pytorch ConnectorOSS SDKimage

使用NAS/CPFS存储

您可以在创建分布式训练(DLC)任务时,通过绑定NAS/CPFS类型的自定义数据集或直接挂载的方式,使用NAS/CPFS存储。具体配置方法,请参见NAS/CPFS使用image

挂载类型

描述

挂载类型

描述

数据集

通过自定义数据集进行挂载,您可以通过是否只读开关,来设置读写权限。

直接挂载

直接挂载NAS/CPFS文件系统,并通过是否只读开关,来设置读写权限。

此外,您还可以在高级配置中,通过设置nconnect参数提升DLC容器访问NAS的吞吐性能。nconnectNFS客户端Linux挂载选项,通过在客户端和服务器之间建立更多的TCP传输连接来提高吞吐性能。建议将nconnect设置为4,命令示例如下。

{"nconnect":"4"}

使用MaxCompute存储

通过非挂载的方式进行MaxCompute存储配置。您可以在创建训练任务时,通过代码配置来配置相关代码文件。具体代码示例,请参见MaxCompute使用image

常见问题

使用paiio读表没有报错但日志里显示killed?

由于资源不足,paiio未做限制,导致MaxCompute数据读取到内存时会出现膨胀现象,同时操作系统和其他系统组件也会占用部分内存。

  • 本页导读 (1)
  • 前提条件
  • 使用OSS存储
  • 通过挂载方式进行OSS存储配置
  • 通过非挂载方式进行OSS存储配置
  • 使用NAS/CPFS存储
  • 使用MaxCompute存储
  • 常见问题
  • 使用paiio读表没有报错但日志里显示killed?
AI助理

点击开启售前

在线咨询服务

你好,我是AI助理

可以解答问题、推荐解决方案等