AI 基础设施工程师、存储开发者和云服务提供商需要快速、安全地访问高容量文件和对象存储,以支持 AI 工作负载。
AI 工作负载日益需要高速数据访问,用于训练、微调、推理上下文、工具调用、搜索和数据库查找。这些数据大部分位于本地和云端的文件和对象中。计算加速器——包括 GPU、TPU 和 XPU——需要远程直接内存访问(RDMA),该技术使用 NIC 或 DPU 加速的数据传输(如 NVIDIA ConnectX NIC 或 NVIDIA BlueField DPU),并且不通过服务器 CPU 控制的内存复制数据。随着 GPU 架构的加速,对 RDMA 加速、零拷贝数据传输的需求也在增长。
构建直接访问文件和对象存储的开发人员不得不应对不同提供商之间的不同 API 和协议。基于 RDMA 的对象存储也缺乏通用的线协议,导致开发人员要么支持特定于提供商的集成,要么依赖传统的访问方法。
xio-sig 的扩展和新的 Scaled Accelerated Data Access (SCADA) Server SDK 提供了两种方法,为 AI 工作负载构建更具互操作性的存储访问。
xio-sig 和 SCADA 的新进展
NVIDIA 正在与 Google Cloud 和 Microsoft 合作,扩展 xio-sig,在 cuFile 之外加入 NVIDIA cuObject。同时,它还宣布 cuObject 客户端和服务器库正式可用。开发人员可以使用 cuObject 的 API 和 RDMA 线协议来构建加速的对象存储应用程序和服务器,而 xio-sig 提供了一条途径,使 cuObject 客户端能够与任何遵守该线协议的服务器端实现进行互操作。
新的 SCADA Server SDK 使存储提供商能够构建 SCADA 服务器,以响应来自 SCADA 客户端的 GPU 发起的请求。IBM 已展示了一个集成 SCADA 和 IBM Storage Scale 的原型的互操作性。与 xio-sig 的扩展一起,这些努力为 AI 开发者、存储提供商和云服务提供了更多通过共享 API 和协议构建和使用加速存储的方式。
还有一类新兴的 AI 数据访问,涉及由加速器发起的小型、细粒度 I/O 请求,这些请求不适合传统的存储介质或协议。通过 NVIDIA Storage-Next 计划,NVIDIA 正在领导一个由 40 多家供应商和客户组成的团体,包括 NAND 供应商、控制器供应商、存储提供商、超大规模企业和应用程序开发者,共同定义 GPU 驱动的存储应如何工作,并将这些进步转化为可互操作的开放行业标准。支持高吞吐量、细粒度、GPU 发起的存储访问的软件基础设施是 SCADA。关于开源 cuFile API、Storage-Next 和 SCADA 的 FMS 博客 提供了这些工作的背景信息。
xio-sig 中的 cuObject 支持
cuObject 库的正式可用为 AI 应用程序开发者、开源框架开发者、存储提供商和存储消费者提供了标准化的方法,用于使用文件和对象协议加速 AI 数据访问,如图 1 所示。AI 加速器可以使用 RDMA 访问文件和对象存储,而无需通过服务器 CPU 路由数据,从而实现更高的吞吐量、更低的延迟,并减少数据写入和读取的 CPU 利用率。

图 1. cuObject 使开发者能够利用不同的对象控制协议和 SDK 加速应用对对象存储服务器的访问。对象控制协议运行在 HTTPS/TCP 上,而对象数据传输则通过 RDMA 进行
基于在 xio-sig 中作为 cuFile 维护者的参与,Google Cloud 正在评估扩大其对 cuObject 的参与,这反映了其对高性能云文件和对象存储的关注。微软也期待加入 xio-sig 董事会,以改善存储 I/O 的互操作性。
xio-sig 进展
仓库结构已为 cuFile 和 cuObject 分别设置。一旦生产就绪的堆栈通过一致性测试,cuFile 和 cuObject 的头文件、cuObject 线协议以及 libxFile 和 xFilekernel 代码的库实现代码将共享。治理文档目前正在由待定的董事会成员审查。
NVIDIA Storage-Next 和 SCADA 扩展
在 Storage-Next 计划中,新的 SCADA 服务器 SDK 使存储合作伙伴能够构建服务器,这些服务器接收来自基于 GPU 的 SCADA 客户端的请求,使用本地或远程存储满足这些请求,并通过 RDMA 交付结果。该工作还包括 Storage Lender Service 和用于配置和部署 SCADA 的 SCADA 命令行实用程序。这些组件支持可与 SCADA 客户端互操作的存储提供商服务器。

图 2. SCADA 服务器 SDK 使第三方开发者能够构建通过通用接口响应 SCADA 客户端请求的 SCADA 存储服务器
IBM Storage 展示了一个原型,其中 SCADA 客户端向其基于新 SCADA 服务器 SDK 构建的 Storage Scale SCADA 服务器初始版本发送请求。这展示了存储供应商如何与 NVIDIA 合作,为 SCADA 的加速、GPU 发起的存储访问构建生态系统,为可能支持语义搜索、推荐系统和欺诈检测等应用访问大型数据集的软件基础设施铺平道路。
开始使用 cuObject 和 xio-sig
随着 xio-sig 扩展到包括 NVIDIA cuObject,且 cuObject 库现已普遍可用,存储合作伙伴、提供商和消费者可以开始使用 cuObject,并准备为社区在 cuFile 和 cuObject 的互操作 API 和协议方面的工作做出贡献。
- 关注 xio-sig仓库以获取更新 - NVIDIA
FMS 博客关于 xio-sig、cuFile 和 Storage-Next - NVIDIA
关于 SCADA 的演示在 2024 OCP 峰会上 - 查看并试用 OSS
Storage Lender Service - GPUDirect Storage (GDS)
文档- 文档,适用于
cuFile API - 文档,适用于
- 文档,适用于
- 链接至 cuObject Server 2.0.0 - NVIDIA CUDA 13.4
请参阅有关软件产品信息的*声明。*
