本帖最后由 superleon123 于 2024-9-30 23:51 编辑
在大模型时代的训练场景中,虽然单台GPU服务器的算力有了较大的提升,但是仍然可能无法满足日益增长的业务需求。此时,就需要将多台GPU服务器组成计算集群。
为了发挥GPU服务器集群的性能,需要为计算集群实现三张网络:RoCE计算网络、存储网络、业务网络。实现这三张网络,有两种方案。(注:RoCE是一种允许在以太网上执行RDMA的网络协议)
1. 是用IB(InfiniBand,无限带宽)技术实现RoCE(RDMA over Converged Ethernet,基于融合以太网的远程直接内存访问)计算网络,用以太网/IP网络实现存储网络和业务网络。但在成本和未来供应链安全方面都不是最优选择。
2. 所有网络均用以太网/IP网络实现,考虑合并存储网络和业务网络。随着RoCE网络的普及,更多的政府、企事业单位倾向于改方案。
三张网络的解决方案:
1. GPU集群中RoCE计算网络
一台nVidia DGX A100服务器为每个A100 GPU都配置了一个网卡,在调度时会一对一地绑定网卡给GPU。一台DGX A100服务器有8张网卡用于GPU互连。RoCE交换机需要为每台DGX A100服务器提供至少8个以太网接口。4台以内DGX A100互连时,一个32口的100G交换机就可以满足GPU互通的需求。如果多于4台,就需要对网络架构进行规划和设计,如在核心交换层采用更多接口的交换机等。如果超过256台,可以构建-接入-汇聚-核心的三层网络。
2. GPU集群中存储与业务网络的设计实现
在机器学习场景中,存储网络的设计需要考虑更深层次,业务网络的收敛比设计标准可以较为宽松。如果以太网接口只有2个,可以考虑将存储与业务网络合并,如果有多于两个接口,可以分离存储与业务网络。如自动驾驶的场景中,需要大量数据来训练,建议使用单独的存储网络,控制存储网络的收敛比不超过2:1。
3. GPU集群中带外管理监控网络的设计实现。
通过连接到各台服务器的IPMI接口(带外管理口),对服务器进行管理,如远程开关机、监控运行状态、维护、挂载设备等。
4. GPU集群中网络边界的设计实现
集群目的是对外提供服务,在规划设计时,应当为集群外部的访问提供网络通道。考虑到信息安全和IP地址资源等因素,应当为集群内外部网络进行一定程度的隔离。此外,在多租户共享GPU集群资源时,网络也需要支持多租户隔离的虚拟化Overlay网络,虚拟化网络对外服务,以及虚拟化网路哦之间的互通等。
注意: 业务网络需要与外部网络互通,RoCE网络和存储网络不需要与外部互通。