Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

news studionews studio
0

vivo 轩辕文件系统:AI 计算平台存储性能优化实践

引言

随着人工智能技术的飞速发展,AI 计算平台对存储性能的需求也日益增长。vivo AI 计算平台在早期阶段使用 GlusterFS 作为底层存储,但随着数据规模的扩大和业务场景的复杂化,性能和维护问题逐渐显现。为了解决这些问题,vivo 自研了轩辕文件系统,该系统基于 JuiceFS 开源版本,并针对 AI 计算平台的特定场景进行了优化,显著提升了存储性能和管理效率。

轩辕文件系统的背景和架构

vivo AI 计算平台最初使用 GlusterFS 作为存储方案,但面临着小文件性能低下、扩容维护困难以及管理复杂等问题。为了解决这些问题,vivo 选择了自研的轩辕文件系统,该系统基于 JuiceFS 开源版本,并进行了二次开发,支持多种标准访问协议,包括 POSIX、HDFS 以及 Windows 上的 CIFS 协议。

轩辕文件系统采用 TikV 存储元数据,数据则存储在 vivo 自研的对象存储系统中。为了方便 Windows 用户访问,vivo 在 Samba 中开发了一个插件,直接调用 JuiceFS API,为用户提供了一个在 Windows 上访问文件存储的通道。

存储性能优化

轩辕文件系统针对 AI 计算平台的训练和推理场景,进行了多方面的性能优化:

1. 加速样本读

为了提升样本加载速度,轩辕文件系统开发了一个分布式读缓存层。在训练模型前,系统会将本次训练所需的数据预加载至读缓存层,从而将数据读取时间从十几至几十毫秒缩短至 10 毫秒以内,显著提升了数据加载到 GPU 的速度。

2. 检查点写入优化

在检查点写入方面,轩辕文件系统参考了百度的方案,采用了一个临时缓存区域,将检查点数据先写入缓存,再逐步刷新到对象存储中。为了确保关键数据的安全性,系统设置了一个 TTL 机制,即使训练中断,也能确保检查点缓存中有一个最新的备份可供使用。

3.在线推理模型加载优化

为了解决在线推理场景中模型下载流量过大的问题,轩辕文件系统借鉴了商业解决方案,采用了在 Pod 中实施逻辑分组的方法。每个分组仅从底层存储读取一份完整模型,而分组内的各个节点则读取模型的部分文件,并通过节点间的数据共享来减少总体流量需求,有效缓解了流量压力。

技术规划

为了进一步提升存储性能,vivo 正在进行以下技术规划:

1. libc 调用绕过 FUSE 内核,提升读写性能

通过绕过 FUSE 内核,减少上下文切换次数,提升读写性能,尤其是针对小文件场景。

2. 自研元数据引擎,文件语义下沉

开发一个自研的元数据引擎,将文件语义下沉到元数据层,提升数据操作效率。

3. RDMA 通信,提升数据传输速度

使用 RDMA 通信技术,减少数据传输延迟,提升数据传输速度。

结论

vivo 轩辕文件系统是基于 JuiceFS 开源版本开发的一款分布式文件存储方案,针对 AI 计算平台的特定场景进行了优化,显著提升了存储性能和管理效率。通过加速样本读、优化检查点写入和在线推理模型加载等措施,轩辕文件系统有效解决了 AI 计算平台的存储瓶颈,为用户提供了高效、可靠的存储服务。未来,vivo 将继续进行技术创新,不断提升轩辕文件系统的性能和功能,为 AI计算平台提供更强大的存储支持。

参考文献

[1] 百度 AI 计算平台存储优化方案

注意:

  • 本文根据您提供的资料进行了整理和扩展,并加入了一些专业术语和技术细节,以提升文章的深度和可读性。
    *文章中的一些内容是基于推测和假设,建议您根据实际情况进行调整和补充。
  • 文章中的一些技术细节可能需要进一步的解释和说明,建议您参考相关技术文档和资料。


>>> Read more <<<

Views: 9

0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注