-
引言
随着 AI 发展,GPU 集群对数据处理能力需求提升,推动 Scale-up 网络向机架级甚至多机架级扩展。以太网技术在 GPU 集群互联中具有高速链路、大容量交换机和成熟生态等优势,多个行业组织正开发基于以太网的 AI 集群 Scale-up 网络技术。字节跳动基于以太网技术,提出低延迟、高带宽的下一代 Scale-up 网络方案 EthLink,满足 GPU 间高速互联需求。
-
GPU 架构和互联方案
2.1 GPU 架构分析
主流 GPU 架构支持 Load-Store 语义,计算引擎处理数据,LSU 负责数据传输。GPGPU 架构包含 L1/L2 Cache、Shared Memory 和 Global Memory,LSU 通过 Load/Store 操作实现数据传输,但传输大块数据时需多次指令,消耗计算引擎算力。新型 GPU(如 Hopper 系列)增加 TMA 模块,通过 DMA Read/Write 语义实现 Global Memory 和 Shared Memory 间高效传输,减少计算引擎负担。
2.2 GPU 互联方案
GPU 互联分为 Scale-up 和 Scale Out 网络。Scale-up 网络带宽高、时延小,基于 Load/Store 语义(如 PCIe、NVLINK),业界典型协议支持 Cache Coherency。Scale Out 网络带宽低、时延高,基于 RDMA 语义(如 IB、RoCEv2),典型协议支持异步操作。GPU 通过 Scale-up 网络传输数据时,仍需消耗算力处理地址信息;通过 Scale Out 网络传输数据时延较大(10us 级),但无需消耗算力。
- 下一代 Scale-Up 互联方案
3.1 需求分析
下一代 Scale-up 网络需满足以下需求:
1)支持 Load/Store 语义,高效传输小块数据和位置不连续数据,适用于推理场景;
2)支持 RDMA 语义,高效传输大块数据(MB~GB 级),节省计算引擎算力,适用于大模型训练;
3)支持远端 Global Memory 和本地 Shared Memory 间数据传输;
4)简化 RDMA Engine 交互操作,提高效率;
5)由系统软件保证 Cache Coherency,降低硬件成本;
6)保证相同路径语义操作和数据报文保序,不同路径可乱序执行;
7)多协议栈负载均衡,上层应用处理乱序问题。
3.2 网络方案
下一代 Scale-up 网络架构支持 Load/Store 语义(LSU 发起)和 RDMA 语义(RDMA Engine 发起)。Load/Store 语义适用于时延敏感场景,RDMA 语义适用于带宽大、时延不敏感场景。网络硬件不再保证 Cache Coherency,由系统软件周期性 Clear Cache;RDMA Engine 通过 DMA Read/Write 语义实现数据传输。
- EthLink 网络方案
EthLink 是字节跳动自研的 Scale-up 网络协议,基于以太网技术,支持 Load/Store 和 RDMA 语义。
4.1 EthLink 协议栈
GPU 协议栈分为 Scale-Up 语义层(GPU 操作和 Scale-up 事务层)和 Scale-up 网络层。GPU 操作包括 Load、Store、RDMA Write、RDMA Read 等;Scale-up 事务层将操作转换为 Memory Read/Write、Atomic 和 Message 语义。EthLink 采用 LLR 和 CBFC 实现可靠无损传输,优化报文头(OEFH)降低开销。
4.2 网络拓扑
EthLink 支持 1~4 个以太网接口,服务器间通过低时延以太网交换机互联,最大支持 1024 个 GPU 节点。通过 Multi-Path 实现端口负载均衡,提升带宽利用率,但需上层应用处理乱序问题。
4.3 网络接口
EthLink 报文封装支持 EthLink-LS 和 EthLink-RDMA,采用 OEFH 优化报文头,显著降低开销。FEC 采用 RS-272 降低延迟。链路层支持 LLR 和 CBFC 实现可靠传输,交换机通过 Switch Event Notification 快速反馈链路状态,实现快速路径切换。