GPU集群网络的设计实现--《大模型时代的基础架构》
<div class='showpostmsg'> 本帖最后由 superleon123 于 2024-9-30 23:51 编辑<p> 在大模型时代的训练场景中,虽然单台GPU服务器的算力有了较大的提升,但是仍然可能无法满足日益增长的业务需求。此时,就需要将多台GPU服务器组成计算集群。</p>
<p> 为了发挥GPU服务器集群的性能,需要为计算集群实现三张网络:RoCE计算网络、存储网络、业务网络。实现这三张网络,有两种方案。(注:RoCE是一种允许在以太网上执行RDMA的网络协议)</p>
<p> 1. 是用IB(InfiniBand,无限带宽)技术实现RoCE(RDMA over Converged Ethernet,基于融合以太网的远程直接内存访问)计算网络,用以太网/IP网络实现存储网络和业务网络。但在成本和未来供应链安全方面都不是最优选择。</p>
<p> 2. 所有网络均用以太网/IP网络实现,考虑合并存储网络和业务网络。随着RoCE网络的普及,更多的政府、企事业单位倾向于改方案。</p>
<p> 三张网络的解决方案:</p>
<p> 1. GPU集群中RoCE计算网络</p>
<p> 一台nVidia DGX A100服务器为每个A100 GPU都配置了一个网卡,在调度时会一对一地绑定网卡给GPU。一台DGX A100服务器有8张网卡用于GPU互连。RoCE交换机需要为每台DGX A100服务器提供至少8个以太网接口。4台以内DGX A100互连时,一个32口的100G交换机就可以满足GPU互通的需求。如果多于4台,就需要对网络架构进行规划和设计,如在核心交换层采用更多接口的交换机等。如果超过256台,可以构建-接入-汇聚-核心的三层网络。</p>
<p> 2. GPU集群中存储与业务网络的设计实现</p>
<p> 在机器学习场景中,存储网络的设计需要考虑更深层次,业务网络的收敛比设计标准可以较为宽松。如果以太网接口只有2个,可以考虑将存储与业务网络合并,如果有多于两个接口,可以分离存储与业务网络。如自动驾驶的场景中,需要大量数据来训练,建议使用单独的存储网络,控制存储网络的收敛比不超过2:1。</p>
<p> 3. GPU集群中带外管理监控网络的设计实现。</p>
<p> 通过连接到各台服务器的IPMI接口(带外管理口),对服务器进行管理,如远程开关机、监控运行状态、维护、挂载设备等。</p>
<p> 4. GPU集群中网络边界的设计实现</p>
<p> 集群目的是对外提供服务,在规划设计时,应当为集群外部的访问提供网络通道。考虑到信息安全和IP地址资源等因素,应当为集群内外部网络进行一定程度的隔离。此外,在多租户共享GPU集群资源时,网络也需要支持多租户隔离的虚拟化Overlay网络,虚拟化网络对外服务,以及虚拟化网路哦之间的互通等。</p>
<p> 注意: 业务网络需要与外部网络互通,RoCE网络和存储网络不需要与外部互通。</p>
</div><script> var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;" style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
if(parseInt(discuz_uid)==0){
(function($){
var postHeight = getTextHeight(400);
$(".showpostmsg").html($(".showpostmsg").html());
$(".showpostmsg").after(loginstr);
$(".showpostmsg").css({height:postHeight,overflow:"hidden"});
})(jQuery);
} </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script>
页:
[1]