CNCC|CNCC 演讲实录| 焱融 YRCloudFile 在 AI 训练中的性能优化实践

【CNCC|CNCC 演讲实录| 焱融 YRCloudFile 在 AI 训练中的性能优化实践】近日,计算机领域学术界、产业界、教育界年度盛会 2021 中国计算机大会在深圳召开。本次大会 NVIDIA 专家团队受邀参会,焱融科技作为 NVIDIA 初创加速计划中优秀成员共同参与其中。英伟达初创加速计划 NVIDIA Inception 是英伟达提供的一个加速人工智能创业公司发展的全球生态项目,该项目旨在培养尖端的人工智能初创企业,为各个行业带来革命性的变化。
CNCC|CNCC 演讲实录| 焱融 YRCloudFile 在 AI 训练中的性能优化实践
文章图片

大会现场,焱融科技 CTO 王鹏飞发表主题演讲《新型存储架构 YRCloudFile 在 AI 训练中的性能优化实践》,通过分享焱融科技服务过的 AI 客户实战经验,深入浅出地分析如何利用焱融 YRCloudFile 解决 AI 训练过程中的存储难题。
CNCC|CNCC 演讲实录| 焱融 YRCloudFile 在 AI 训练中的性能优化实践
文章图片

以下是 CNCC 大会现场在 NVIDIA 专场的演讲实录,阅读时长 10 mins,Enjoy~
本次主题演讲分为三个部分

  • 存储集群面临的挑战
  • YRCloudFile 解决 AI 训练难题方案
  • YRCloudFile 最佳应用实践
作为一家专注于软件定义存储技术的企业,焱融科技自 YRCloudFile 发布以来,长期深耕 AI 领域,在行业内积累了众多项目及实战经验,帮助语音识别、视觉识别、自动驾驶等 AI 企业提升训练效率,凭借高性能、高可用、高扩展、云上部署等特性,满足企业用户各种场景下的需求。
YRCloudFile 在国内多种云环境下,率先提供高性能文件存储的产品。在全球 IO500 性能测试中,YRCloudFile 进入世界前六。同时,YRCloudFile 也是国内首个进入 CNCF Landscape 的容器存储产品。
文件系统在存储领域主要分为三大类:对象存储、块存储和文件存储。其中,文件存储接口是上层应用最常用的访问方式,有超过 70% 的应用在使用文件接口。在上述存储类型中,每个都有各自的特点和优势,但是如果想要给 AI、自动驾驶、HPC、生命科学等新型应用场景提供更好的服务,就需要一款优质的存储产品。
YRCloudFile 作为高性能、高可用、高扩展的分布式文件存储产品,实际上是专门针对上述场景进行了优化,能够支持企业对高性能、海量小文件、容器存储等方面的需求。YRCloudFile 自发布以来,长期关注“数据消耗大户”——AI,试图通过专业、领先的存储技术,帮助企业持续优化数据处理流程。因此,我们将从 AI 训练背后的存储难题切入,分享焱融科技的破解之法。
AI 训练背后的“血”与“泪” AI 训练过程是非常讲究的,它不仅需要大量的训练数据,而且还要兼顾性能、运行效率和数据安全。
当前,AI 训练通常会使用 GPU 服务器,其性能在算法层面会比 CPU 的表现更好一些,但是 GPU 服务器并不等于 AI 的基础架构。首先在大规模 AI 集训中,大量的数据需要传输,然而 GPU 的速度是非常快的,通常 IO 任务使用的 CPU、存储和网络难以满足 GPU 性能的需求。其次,随着容器化逐渐成为 AI 集群的趋势,如何将数据提供给 K8S 平台上容器化的 AI 训练集群使用也成为一个关键难题。
说起 AI,我们都知道它是“人工智能”,其背后实际还是有人工的成分。目前来说,我们通常需要以人工的方式给相关数据进行标注,以便于数据用于后续训练。数据标注对于 AI 来说,是训练的重要基础和依据。因此,数据量的多少在很大程度上决定了 AI 算法的精准度。
从实际 AI 训练来看,过程中通常产生的都是小文件,这些文件单个可以说是不占多少空间,但是它胜在量大,非常大。一旦数据量达到庞大的程度,为了保证访问的高效性,对存储架构体系提出了非常高的要求。
在不同领域对于海量小文件有不同的处理方法,例如将众多小文件汇总成一个大文件,TensorFlow 等训练框架也有对应的支持,但为了避免 AI 算法学习到因聚合文件而产生的未知规律,对算法的精度有高要求的场景,所有的文件必须处于同等的地位,不能采用聚合的方式。
目前,AI 领域主要使用的方案是利用本地数据中心,搭配 GlusterFS、Ceph、Lustre 等,通过网络传输的方式将数据传输到 GPU 服务器中。但是这样的方法主要存在三个问题:
  • 同一份数据存储在多台 GPU 服务器上,造成冗余和浪费;
  • 存储维护复杂度高;
  • 难以达到自动化和标准化的需求;
为了解决上述难题,给 AI 训练提供更好的性能支撑,YRCloudFile 提出了相应的解决方案。
面对 AI 训练难题,YRCloudFile 展现十八般武艺 针对上述难点,焱融科技从多个维度提供了一系列高性能、高可用、高扩展的存储方案。
首先,从组件和架构出发,我们将为其提供以下五个技术支持:
  • MS:支持集群管理服务;
  • MDS:支持元数据服务,通过 SSD 磁盘主要负责数据定位等工作,并根据集群文件数量可随时水平扩展;
  • Storage:数据存储服务,支持运行在 SAS / SATA / NVMe 磁盘上,存储实际数据;
  • 客户端:支持通过以太网络或 InfiniBand 访问;
  • 企业级特性:支持目录Quota、目录QoS、数据恢复限速、访问网络与内部网络分离、SSD 缓存。
其次,为了实现存储全生命周期管理,达到数据统一管理和联通的目的,YRCloudFile 可以与对象存储联动,提供一层高速的文件访问接口。同时,为了避免资源抢占的分配问题,我们采取了冷热数据分层的技术,通过高性能文件存储+低成本对象存储的组合,我们将有效实现热数据依然为 AI 提供高性能访问的特性,而冷数据可以在用户现有的低成本对象存储中有效保存。
为了满足 AI 训练过程多方面的需求,我们做了部分优化:
RDMA 技术
为了降低网络传输中,服务器端数据处理造成的延迟,我们采用了 RDMA 技术,实现当服务器网卡收到一个数据包时,可以直接在网卡上完成网络层和传输层的解析,直接将数据传递给应用层,不需要 CPU 的干预,从而释放内存带宽并减少 CPU 消耗,进而提升应用系统性能。
海量小文件
因为 AI 集群基本上都是海量数据,而且基本都是小于 1M 的小文件,海量小文件的存储与访问对文件系统的元数据管理服务的结构提出了新的要求,所以焱融科技主要通过可水平扩展设计的 MDS 架构,实现 MDS 集群化。既实现了元数据的分布存储,避免了访问热点,随着规模的增加,又保证了元数据的检索性能。
容器化
实际上,针对 AI 存储现状,市场上也存在一些其他方案。比如 Gartner 认为 容器和 serverless 不仅有助于简化 AI 部署的过程,使 AI 成为顶级云服务之一,而且将使机器学习模型作为独立的功能提供服务,从而以更低的开销运行 AI 应用。
作为国内首批实现容器持久化存储的厂商,YRCloudFile 不仅在架构上实现了完全与硬件解耦,而且在通用服务器上,YRCloudFile 同样可以充分发挥出自身在高速存储介质和网络存储性能方面的优势。同时,YRCloudFile 凭借多年的技术经验,实现了基于 CSI 接口的标准化服务,在数据流转和管理层面具备成熟的功能和服务。
经典案例分享,带你全面了解 YRCloudFile:
精选案例 | YRCloudFile 引领自动驾驶存储技术新趋势
从 0-15 套存储集群,YRCloudFile 助力 AI 训练效率“超线性增长”
在 YRCloudFile 的支持下,上述两家公司实现轻松应对海量小文件性能、容量的挑战,将更多的精力投入到训练业务中。
以上是中国计算机大会 NVIDIA 专场上给大家分享的主要内容。作为软件定义存储的引领企业,焱融科技希望为更多行业、客户提供高性能、高可用、高扩展的产品,激发数据背后的无限潜能。

    推荐阅读