什么是 RDMA?
RDMA(远程直接内存访问)让一台机器可通过网络直接读写另一台机器的内存,绕过双方的 CPU 和操作系统。 网络适配器在两端的应用内存之间直接搬移字节,因此延迟极低、CPU 开销近乎为零。在以太网上,RoCEv2 承载 RDMA 使其可被路由,而由于 RDMA 假定不丢包,它运行在一张无损 fabric 上。
零拷贝、CPU 旁路,以及这为何是关键
普通的网络传输会通过内核拷贝数据,并在两端都依赖 CPU。RDMA 把两者都去掉。适配器直接从发送端的应用内存读取,并直接写入接收端的应用内存,数据路径上没有任何东西经过 CPU。正是这一点造就了 RDMA 极低延迟、极高吞吐、且几乎没有 CPU 成本的组合,也是 RDMA 成为 GPU 间通信标准的原因。
- Zero-copy: 字节在两端的应用内存之间直接搬移,绝不经由中间的内核缓冲区中转。
- 内核旁路: 由网络适配器而非操作系统驱动传输,因此 CPU 不在数据路径上。
- 近乎零开销: CPU 得以腾出来运行工作负载,而非搬运数据包,这在 GPU 规模下至关重要。
RoCEv2 如何在以太网上承载 RDMA
RoCEv2(RDMA over Converged Ethernet 第 2 版)把 RDMA 封装进 UDP 和 IP,使用目的 UDP 端口 4791,因此它可跨标准的三层以太网 fabric 路由,无需单独的网络。RDMA 操作仍以适配器到适配器的方式运行,保持同样的零拷贝行为;RoCEv2 只是为它提供一条可路由的以太网路径。正是这一点,让多厂商以太网 fabric 得以在 GPU 集群上替代 InfiniBand。
AI fabric
这种传输是构建 AI fabric 的基础。 AI 网络架构: the GPU-to-GPU network that carries every collective during training.
为何 AI 集合通信依赖 RDMA,以及为何 fabric 必须无损
AI 训练运行 AllReduce 等集合操作:每一步之后,每个 GPU 都与其他每个 GPU 交换梯度,然后所有 GPU 在下一步之前等待这次交换。数据量大且时序紧凑,因此 RDMA 让每次交换快速完成且不占用 CPU。由于哪怕丢失一个数据包也会触发恢复、使尾延迟骤增并可能拖停整个集合通信,基于以太网的 RDMA 始终运行在一张无损 fabric 上。
- 集合通信会阻塞每个 GPU,直到交换完成,因此 更低的延迟缩短了该步骤 ,而整个集群都在等待这一步骤。
- RDMA 让这次交换 不占用 CPU 且无需拷贝,这一点跨越数百万个步骤累积起来,便成为影响总训练时间的直接杠杆。
- OcNOS-DC 提供这张不丢包的 fabric,配以 PFC、ECN 和动态负载均衡 ,运行在 Broadcom Tomahawk 5 上,让流量避开热点链路。
什么是 RDMA,答案在此
什么是RDMA?
RoCEv2 如何在以太网上承载 RDMA?
零拷贝和 CPU 旁路为何对 AI 重要?
为何 RDMA 需要无损 fabric?
在设计一张 RDMA fabric?让我们把它构建成无损的
告诉我们工作负载和 GPU 规模,IP Infusion 的工程师将在运行 OcNOS-DC 的开放硬件上,与您一起梳理 RoCEv2 和无损 fabric 的设计。
用 OcNOS 设计整张 AI fabric
从商业论证到端口数量测算,无论您进行到哪一步,都可从此接续。
深入了解,随身带走。
两份简短的技术下载资料,比本页更深入:完整的 OcNOS-DC 数据表和无损 800G AI fabric 架构。
OcNOS-DC 数据手册
表单简短。提交后您的 PDF 将立即在新标签页中打开。
✓ 正在新标签页中打开您的 PDF……
如果未能自动打开,请使用下方链接。
OcNOS 800G 无损 AI Fabric
表单简短。提交后您的 PDF 将立即在新标签页中打开。
✓ 正在新标签页中打开您的 PDF……
如果未能自动打开,请使用下方链接。