GTC 2024 火线评论:DPU 重构文件存储访问

news2024/7/4 1:54:24

编者按:英伟达2024 GTC 大会上周在美国加州召开,星辰天合 CTO 王豪迈在大会现场参与了 GPU 与存储相关的最新技术讨论,继上一篇《GTC 2024 火线评论:GPU 的高效存储利用》之后,这是他发回的第二篇评论文章


上一篇文章已经提到,随着 AI 集群规模的提升,数据集的大幅增长,势必要面对集群资源的高效利用和安全问题,其中关键之一就是计算资源对于共享资源(如共享文件存储)的安全访问和保护。相比于传统 CPU 集群的共享存储和安全访问,GPU 集群在面对类似问题的挑战是安全+性能。安全访问并不能牺牲性能,特别是在当下刚发布的新一代 GPU 算力和网络平台下,存储带宽面对进一步提高的要求,吃紧的内存带宽和网络传输将进一步承压。


0d3891a3b5d837e0bf8b38a4dff455de.jpeg

 

高性能存储安全访问的挑战

在讨论安全问题前,可能还要先牵扯算力集群和存储的网络方案。

众所周知,Nvidia 在 AI 数据中心推崇两个概念,一个是 AI Factory,另一个是 AI Cloud,前者类似于超级计算机的概念,适合单应用场景并推荐 Infiniband 组网方案,后者面临多租户和多样化的计算任务,因此推荐以太网方案。在这个分类下,我们会将以上存储安全访问问题缩小到更广泛 AI Cloud 场景上,因为这类场景相比而言,更急迫的需要解决   6f6739827ad68f927f3e220e8fbc33fe.jpeg
特别是,在当下 GPU 芯片昂贵成本下,即使在非 GPU 虚拟化场景,算力共享和灵活调度都是降低 AI 任务成本的重要手段,但算力平台如何向用户提供安全的数据访问和隔离手段是其中的重中之重。 因此,AI 算力集群需要在 足够性能 下解决控制面和数据面的安全访问挑战:
  • 控制面路径的关键操作安全性:管理和配置网络、系统的操作,权限和策略的分配,漏洞和安全缺陷管理等等
  • 数据面的授权访问和外部攻击:数据泄漏、篡改、服务拒绝等攻击

 DPU 作为存储访问的信任代理

在以太网组网的 AI Cloud 场景下,Nvidia 提出了引入 DPU 方案来解决上述问题,通过 DPU 提供的代理访问来隔离非信任的主机和可信基础设施,确保 AI Cloud 的数据安全。

17cbee2f93d956a13042ec081ab93a64.jpeg

DPU 是一种专用硬件加速器,通常包含 CPU、内存和网络接口,能够在不增加主机侧处理器负担的情况下,执行数据处理任务,包括 Nvidia、Intel、AMD、Marvell 在内的芯片厂商都推出了 DPU 产品。DPU 在安全性上通常可以带来几个好处:

  • 隔离和专用处理能力:DPU 可以作为一个隔离层,将存储和网络操作与主机的 CPU 分离开。这意味着即使主机受到安全威胁,攻击者也难以直接接触到数据传输和存储操作。

  • 减少攻击面:DPU 可以控制访问存储资源的路径,允许更精细的访问控制策略,并且限制了潜在的攻击向量。由于主 CPU 不直接处理数据流,攻击者需先破坏 DPU,才能对数据进行篡改或未授权访问,这大大增加了攻击难度。

  • 内置安全功能:许多 DPU 都配备了加密和其他安全功能,如内联数据加密、秘密保护和防火墙服务。这些功能可以在硬件层面提供保护,而不是依赖于可能被破坏的软件。

  • 细粒度的控制:DPU 可以实现对数据访问的精细管理,包括访问控制、监控和日志记录,使系统管理员能够更好地监控和响应安全事件。

  • 提供零信任架构:在 DPU 代理的帮助下,可以实施零信任安全模型,它假定内部网络也不可信,需要严格验证所有请求,这增强了对潜在内部威胁。


值得一提的是:在 Nvidia 发布的《下一代 AI 的新一代网络》白皮书中,提到在 400/800Gb 的网络中,即使无损网络环境中,都很难避免在 AI 的突发流量中性能不受影响。因此在以太网路线上,业界会期望借助于 DPU 算力来实现 RDMA 的拥塞控制,而不是依赖交换机或者 ECN 机制。因此 DPU 可能会是超高以太网网络的必需。


回到计算节点的 GPU 应用对于文件存储访问这个问题,存储客户端目前主要有两种选择:

  • 用户态客户端:cuFile(GDS)/S3/SQL/..
  • 内核态客户端:Posix/VFS

而引入 DPU 来实现安全访问,可以利用业界已有的虚拟化场景的文件协议实现 virtio-fs,virtio-fs 已经有长达十年的发展历程,它可以在这里提供从 Host 到 DPU 的文件代理通道,使得文件存储客户端可以完全运行于 DPU 操作系统。这样的变化,可以用下图来更清晰展示,其中红色的访问路径表示不安全的,绿色表示通过 DPU 的代理访问:

42d1df7c90cd812282b3125e6b30e8de.jpeg

 零拷贝问题

从技术角度来讲,引入额外的 DPU 来实现文件存储访问肯定带来额外开销,具体来说有这两个问题:

  • 客户端缓存:在 AI 高性能的存储场景,客户端的内存缓存是必备选择,在当前的大部分 AI 任务中,对于存储的访问成本相对计算延迟仍然较高,缓存命中率非常关键,上一篇提到的 SCADA 实际上就是希望在中间建立通用的框架。但就目前而言,数据在计算节点上的缓存主要由存储客户端提供,例如 GPFS 在内核态实现了自有的缓存机制,Lustre 则更多依赖于 Linux Page Cache 机制。如果将存储客户端运行在 DPU 后,之前 Host 侧 CPU/GPU 的庞大内存也无法被数据缓存利用,DPU 内置的内存相对较小,则势必导致缓存命中率降低,性能大幅下降。因此,DPU 代理方案需要进一步解决该问题。

  • 额外的拷贝成本:在客户端直接访问存储的路径中,通常采用 RDMA 来实现数据零拷贝。增加 DPU 代理访问后,会增加一次 Host 内存到 DPU 的拷贝。

在这里,Nvidia 正式提出了 DPU Secure Storage Zero Copy 项目,通过引入 Cross-function mkey(RDMA mkey) 允许 DPU 使用来自 Host 地址空间的地址,减少了从 Host 到 DPU 的拷贝。整个数据传输仍由 DPU 中的服务来实现,只有受信任的 DPU 服务才能访问 Cross-function mkey,实际上就是由存储客户端来维护,整个 IO 过程都不会将存储后端暴露给 Host,确保潜在的安全风险最小化。 进一步来说,Host 的内存可以被用来做文件数据缓存,无需受 DPU 引入的影响,也避免了 Double Buffer 问题

5dcabe7ba12f53b778cdd1197325f331.jpeg

 DOCA SNAP virtio-fs

DPU Secure Storage Zero Copy 会通过 DOCA virtfs-fs SDK 来交付,过去 DOCA 已经提供了 SNAP NVME 能力,即可以通过 DPU 来实现 NVMe over Fabric 的卸载,DOCA SNAP virtfs 会成为新的文件存储访问卸载能力。

DPU 中的 VirtioFS 服务会基于 SPDK(https://spdk.io/) 开发,提供面向不同的文件存储供应商实现统一的抽象,运行在 DPU 中,面向 Host 的 virtio-fs 内核驱动承接请求,并为不同供应商的文件存储客户端根据需要去执行对应请求,未来文件存储供应商可以通过以下方式对接:

  • 用户态文件客户端:如果文件存储直接支持用户态的文件客户端库,SNAP virtio-fs 可以直接通过库链接方式集成使用。

  • NFS over RDMA:如果文件存储提供标准的 NFS over RDMA 支持,则 SNAP virtio-fs 会直接通过 DPU OS 的 NFS 内核客户端访问,DPU OS 中的 NFS 内核客户端会修改来支持零拷贝。

  • 内核态文件客户端:如果文件存储支持内核态客户端,则可以在 DPU OS 上安装,SNAP virtio-fs 可以执行 POSIX 调用。从 DPU OS Kernel 可以支持将 mkey 传递给 POSIX read()/write() 实现零拷贝。

目前 DPU Secure Storage 项目也需要得到文件存储厂商和 Linux Upstream 的支持,文件存储厂商需要尽快考虑将存储客户端迁移到合适的 DPU 运行环境,并作为 SPDK virtio-fs 的后端,为了实现零拷贝,需要能够支持利用 SPDK 的 memory domain API 来获得 mkey 对应的 Host 内存空间。而为了在 Host OS 上需要进一步加强 virtio-fs 的性能,比如实现多队列能力,支持 GPU 内存等。

 XSKY 参与情况

对于国内领先的分布式存储厂商来说,我们同样认为,不仅是 Nvidia BlueField 系列产品可以提供这样的方式,这样的需求应该可以在普遍的 DPU 产品中实现并被利用,有效的提高 DPU 在存储协议上的多样化支持,并带来共享文件存储的安全性所需。

我们也会尽快评估在基于新一代全共享架构(XSEA)的全闪存文件存储,提供面向 AI Cloud 场景的 DPU 访问客户端能力,拥抱快速变化的 AI 基础设施进化。在多样化的 GPU 存储类型的利用上,不管是块存储的 NVMe 卷作为节点内的高速缓存,还是共享文件存储作为 CPU/GPU 内存的全局缓存存储,最终通过基于对象存储的数据湖来统一治理,这些存储类型的需求和定位都跟 XSKY 的产品定位和路线图高度符合。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1553740.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网络七层模型之表示层:理解网络通信的架构(六)

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

服务器被挖矿了怎么办,实战清退

当我们发现服务器资源大量被占用的时候,疑似中招了怎么办 第一时间重启服务是不行的,这些挖矿木马一定是会伴随着你的重启而自动重启,一定时间内重新霸占你的服务器资源 第一步检查高占用进程 top -c ps -ef 要注意这里%CPU,如果…

企微这个工具太好用,提升企业销售业绩效果好!

在商海浮沉中,销售业绩的提升始终是企业的核心追求。想要把产品卖出去,首要任务便是吸引客户。如今,线上线下的销售模式已然成为主流,短视频社交媒体如抖音、快手等平台更是成为了流量争夺的热门战场。但面对这些平台上的海量且流…

自动发卡平台源码优化版,支持个人免签支付

源码下载地址:自动发卡平台源码优化版.zip 环境要求: php 8.0 v1.2.6◂ 1.修复店铺共享连接时异常问题 2024-03-13 23:54:20 v1.2.5 1.[新增]用户界面硬币增款扣款操作 2.[新增]前台对接库存信息显示 3.[新增]文件缓存工具类[FileCache] 4.[新增]库存同…

营销大师:小米汽车定价的道道!喝酒买车你沾了吗?——早读(逆天打工人爬取热门微信文章解读)

雷神之锤降临,睡不着的是车企,不应该是你 引言Python 代码第一篇 雷军:小米SU7 现已开启定购|人车合一,我心澎湃第二篇 人民日报 来啦新闻早班车要闻社会政策 结尾 “物有所值乃生存之基石,性价比则为选择之…

Ribbon简介

目录 一 、概念介绍 1、Ribbon是什么 2、认识负载均衡 2.1 服务器端的负载均衡 2.2 客户端的负载均衡 3、Ribbon工作原理 4、Ribbon的主要组件 IClientConfig ServerList ServerListFilter IRule Iping ILoadBalancer ServerListUpdater 5、Ribbon支持…

Vue生命周期,从听说到深入理解(全面分析)

每个 Vue 组件实例在创建时都需要经历一系列的初始化步骤,比如设置好数据侦听,编译模板,挂载实例到 DOM,以及在数据改变时更新 DOM。在此过程中,它也会运行被称为生命周期钩子的函数,让开发者有机会在特定阶…

1.10 类、方法、封装、继承、多态、装饰器

一、介绍类 类(class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例 实例化:创建一个类的实例,类的具体对象。 对象:通过类定义的数据结构实例。对象包括两个数据成员&#x…

FebHost:意大利个人或企业都注册.IT域名吗?

对于广大意大利企业而言,拥有一个属于自己的”.IT”域名已经成为了一种标准做法。无论是中小型本土企业还是知名跨国公司,他们都纷纷选择这一突出意大利特色的国家顶级域名来彰显自身的品牌形象。 数据显示,截至2023年6月,在全球注册的350多万个”.IT”域名中,有超过220万个来…

python pytz是什么

pytz模块常用于时区的转换,常常配合datetime一起使用。我们知道datetime除了data方法生成的时间是没有时区概念,其他如time、datetime等都是有时区概念,即指定了tzinfo信息。 >>> import datetime >>> datetime.datetime.n…

FPGA工程师职业发展道路

作为FPGA工程师,你可以通过以下几个步骤来发展自己的职业道路: 1. 学习基础知识:首先,你需要学习数字电路设计和计算机体系结构的基础知识。了解FPGA的原理、架构和工作原理是非常重要的。 2. 掌握HDL编程语言:掌握至…

企微侧边栏开发(内部应用内嵌H5)

一、背景 公司的业务需要用企业微信和客户进行沟通,而客户的个人信息基本都存储在内部CRM系统中,对于销售来说需要一边看企微,一边去内部CRM系统查询,比较麻烦,希望能在企微增加一个侧边栏展示客户的详细信息&#xf…

有效的数独-java

题目描述: 请你判断一个 9 x 9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图&#…

C++实现A*路径规划的库

作者:CodeLikeAGirl 编译:东岸因为一点人工一点智能公众号 C实现A*路径规划的库本文中,我们探索了A*路径规划在Robotic Project C中的迷人世界,了解了一些超酷的C库。https://mp.weixin.qq.com/s/WyTIzkmWS-0t5oaII6or-Q 01 A*…

ventoy_grub2_boot_win7_win10.md

ventoy (grub2) 的 extMenu启动 win7 efi 、win10 efi ventoy界面按F6(extMenu菜单) 弹出 ventoy/ventoy_grub.cfg中的菜单内容 ventoy (grub2) 的 extMenu启动 win7 efi 1. 生成 老式 分区启动记录 EFI\Microsoft\Boot\bootmgfw.efi: 命令: bcdboot…

知识图谱构建三要素:实体、关系与属性技术与实战全解析

目录 一、知识图谱三要素简介实体(Entity)的重要性关系(Relationship)的作用属性(Attribute)的应用 二、实体(Entity)理论介绍实体的概念细节实体的分类实体识别的技术细节实体识别的…

element plus的el-image图片发布到nginx不显示

问题&#xff1a; <el-image alt""src"/img/month-b.png" class"card-icon"style"width: 89px;height: 89px;right: -7px;top: -5px;"/> 部署到nginx二级路由访问地址是&#xff1a; http://192.168.1.207/divided/# 这时候使用…

大咖论道 | RPA与AI在企业数字化转型中的角色与未来

前言&#xff1a;在ISIG-RPA峰会的圆桌论坛中&#xff0c;由中投创展创始人兼CEO任威主持了关于企业自动化转型的深入讨论&#xff0c;嘉宾包括UiPath大中华区资深技术经理王栊、SAP业务技术平台卓越中心方案架构师阎韶华和三井住友保险中国区信息技术部负责人陈婧。 讨论焦点…

Acwing_795前缀和 【一维前缀和】+【模板】二维前缀和

Acwing_795前缀和 【一维前缀和】 题目&#xff1a; 代码&#xff1a; #include <bits/stdc.h> #define int long long #define INF 0X3f3f3f3f #define endl \n using namespace std; const int N 100010; int arr[N];int n,m; int l,r; signed main(){std::ios::s…

吴恩达2022机器学习专项课程(一) 4.2 梯度下降实践

问题预览/关键词 本节内容梯度下降更新w的公式梯度下降更新b的公式的含义α的含义为什么要控制梯度下降的幅度&#xff1f;导数项的含义为什么要控制梯度下降的方向&#xff1f;梯度下降何时结束&#xff1f;梯度下降算法收敛的含义正确更新梯度下降的顺序错误更新梯度下降的顺…