AIGC到底需要多大的算力?

2023年,是ai人工智能技术全面爆红的一年。
以chatgpt、gpt-4、文心一言为代表的aigc大模型,集文本撰写、代码开发、诗词创作等功能于一体,展现出了超强的内容生产能力,带给人们极大震撼。
aigc,ai-generated content(人工智能生产内容)   作为一个通信老司机,除了aigc大模型本身之外,小枣君更加关注的,是模型背后的通信技术。到底是一张怎样的强大网络,在支持着aigc的运转?此外,ai浪潮的全面来袭,将对传统网络带来怎样的变革?
█ aigc,到底需要多大的算力?
众所周知,数据、算法和算力,是人工智能发展的三大基本要素。
前面提到的几个aigc大模型,之所以那么厉害,不仅是因为它们背后有海量的数据投喂,也因为算法在不断进化升级。更重要的是,人类的算力规模,已经发展到了一定程度。强大的算力基础设施,完全能够支撑aigc的计算需求。   aigc发展到现在,训练模型参数从千亿级飙升到了万亿级。为了完成这么大规模的训练,底层支撑的gpu数量,也达到了万卡级别规模。
以chatgpt为例,他们使用了微软的超算基础设施进行训练,据说动用了10000块v100 gpu,组成了一个高带宽集群。一次训练,需要消耗算力约3640 pf-days(即每秒1千万亿次计算,运行3640天)。
一块v100的fp32算力,是0.014 pflops(算力单位,等于每秒1千万亿次的浮点运算)。一万块v100,那就是140 pflops。
也就是说,如果gpu的利用率是100%,那么,完成一次训练,就要3640÷140=26(天)。
gpu的利用率是不可能达到100%,如果按33%算(openai提供的假设利用率),那就是26再翻三倍,等于78天。   可以看出,gpu的算力、gpu的利用率,对大模型的训练有很大影响。
那么问题来了,影响gpu利用率的最大因素,是什么呢?   答案是:网络。
一万甚至几万块的gpu,作为计算集群,与存储集群进行数据交互,需要极大的带宽。此外,gpu集群进行训练计算时,都不是独立的,而是混合并行。gpu之间,有大量的数据交换,也需要极大的带宽。
如果网络不给力,数据传输慢,gpu就要等待数据,导致利用率下降。利用率下降,训练时间就会增加,成本也会增加,用户体验会变差。
业界曾经做过一个模型,计算出网络带宽吞吐能力、通信时延与gpu利用率之间的关系,如下图所示:
大家可以看到,网络吞吐能力越强,gpu利用率越高;通信动态时延越大,gpu利用率越低。
一句话,没有好网络,别玩大模型。
█ 怎样的网络,才能支撑aigc的运行?
为了应对ai集群计算对网络的调整,业界也是想了不少办法的。   传统的应对策略,主要是三种:infiniband、rdma、框式交换机。我们分别来简单了解一下。  
infiniband组网
infiniband(直译为“无限带宽”技术,缩写为ib)组网,搞数据通信的童鞋应该不会陌生。
这是目前组建高性能网络的最佳途径,带宽极高,可以实现无拥塞和低时延。chatgpt、gpt-4所使用的,据说就是infiniband组网。
如果说infiniband组网有什么缺点的话,那就是一个字——贵。相比传统以太网的组网,infiniband组网的成本会贵好几倍。这项技术比较封闭,业内目前成熟的供应商只有1家,用户没什么选择权。  
rdma网络
rdma的全称是remote direct memory access(远程直接数据存取)。它是一种新型的通信机制。在rdma方案里,应用程序的数据,不再经过cpu和复杂的操作系统,而是直接和网卡通信,不仅大幅提升了吞吐能力,也降低了时延。
rdma最早提出时,是承载在infiniband网络中的。现在,rdma逐渐移植到了以太网上。
目前,高性能网络的主流组网方案,是基于roce v2(rdma over converged ethernet,基于融合以太网的rdma)协议来组建支持rdma的网络。
这种方案有两个重要的搭配技术,分别是pfc(priority flow control,基于优先级的流量控制)和ecn(explicit congestion notification,显式拥塞通知)。它们是为了避免链路中的拥塞而产生的技术,但是,频繁被触发,反而会导致发送端暂停发送,或降速发送,进而拉低通信带宽。(下文还会提到它们)  
框式交换机
国外有部分互联网公司,寄希望于利用采用框式交换机(dnx芯片+voq技术),来满足构建高性能网络的需求。
dnx:broadcom(博通)的一个芯片系列 voq:virtual output queue,虚拟输出队列   这种方案看似可行,但也面临以下几个挑战。
首先,框式交换机的扩展能力一般。机框大小限制了最大端口数,如想做更大规模的集群,需要横向扩展多个机框。
其次,框式交换机的设备功耗大。机框内线卡芯片、fabric芯片、风扇等数量众多,单设备的功耗超过2万瓦,有的甚至3万多瓦,对机柜供电能力要求太高。
第三,框式交换机的单设备端口数量多,故障域大。   基于以上原因,框式交换机设备只适合小规模部署ai计算集群。
█ 到底什么是ddc
前面说的都是传统方案。既然这些传统方案不行,那当然就要想新办法。
于是,一种名叫ddc的全新解决方案,闪亮登场了。
ddc,全名叫做distributed disaggregated chassis(分布式分散式机箱)。
它是前面框式交换机的“分拆版”。框式交换机的扩展能力不足,那么,我们干脆把它给拆开,将一个设备变成多个设备,不就ok了?
框式设备,一般分为交换网板(背板)和业务线卡(板卡)两部分,相互之间用连接器连接。
ddc方案,将交换网板变成了ncf设备,将业务线卡变成了ncp设备。连接器,则变成了光纤。框式设备的管理功能,在ddc架构中,也变成了ncc。
ncf:network cloud fabric(网络云管理控制平面)
ncp:network cloud packet processing(网络云数据包处理)
ncc:network cloud controller(网络云控制器)
ddc从集中式变成分布式之后,扩展能力大大增强了。它可以根据ai集群的大小,灵活设计组网规模。
我们来举两个例子(单pod组网和多pod组网)。
单pod组网中,采用96台ncp作为接入,其中ncp下行共18个400g接口,负责连接ai计算集群的网卡。上行共40个200g接口,最大可以连接40台ncf,ncf提供96个200g接口,该规模上下行带宽为超速比1.1:1。整个pod可支撑1728个400g网络接口,按照一台服务器配8块gpu来计算,可支撑216台ai计算服务器。
单pod组网
多级pod组网,规模可以变得更大。
在多级pod组网中,ncf设备要牺牲一半的serdes,用于连接第二级的ncf。所以,此时单pod采用48台ncp作为接入,下行共18个400g接口。
多pod组网
单个pod内,可以支撑864个400g接口(48×18)。通过横向增加pod(8个),实现规模扩容,整体最大可支撑6912个400g网络端口(864×8)。
ncp上行40个200g,接pod内40台ncf。pod内ncf采用48个200g接口,48个200g接口分为12个一组上行到第二级的ncf。第二级ncf采用40个平面(plane),每个平面4台ncf-p,分别对应在pod内的40台ncf。
整个网络的pod内实现了1.1:1的超速比(北向带宽大于南向带宽),而在pod和二级ncf之间实现了1:1的收敛比(南向带宽/北向带宽)。
█ ddc的技术特点
站在规模和带宽吞吐的角度,ddc已经可以满足ai大模型训练对于网络的需求。
然而,网络的运作过程是复杂的,ddc还需要在时延对抗、负载均衡性、管理效率等方面有所提升。  
基于voq+cell的转发机制,对抗丢包
网络在工作的过程中,可能会出现突发流量,造成接收端来不及处理,引起拥塞和丢包。
为了应对这种情况,ddc采取了基于voq+cell的转发机制。
发送端从网络接收到数据包之后,会分类到voq(虚拟输出队列)中存储。
在发送数据包前,ncp会先发送credit报文,确定接收端是否有足够的缓存空间处理这些报文。
如果接收端ok,则将数据包分片成cells(数据包的小切片),并且动态负载均衡到中间的fabric节点(ncf)。
如果接收端暂时没能力处理报文,报文会在发送端的voq中暂存,并不会直接转发到接收端。
在接收端,这些cells会进行重组和存储,进而转发到网络中。
切片后的cells,将采用轮询的机制发送。它能够充分利用到每一条上行链路,确保所有上行链路的传输数据量近似相等。
轮询机制
这样的机制,充分利用了缓存,可以大幅度减少丢包,甚至不会产生丢包情况。数据重传减少了,整体通信时延更稳定更低,从而可以提高带宽利用率,进而提升业务吞吐效率。  
pfc单跳部署,避免死锁
前面我们提到,rdma无损网络中引入了pfc(基于优先级的流量控制)技术,进行流量控制。
简单来说,pfc就是在一条以太网链路上创建 8 个虚拟通道,并为每条虚拟通道指定相应优先级,允许单独暂停和重启其中任意一条虚拟通道,同时允许其它虚拟通道的流量无中断通过。
pfc可以实现基于队列的流量控制,但是,它也存在一个问题,那就是死锁。
所谓死锁,就是多个交换机之间,因为环路等原因,同时出现了拥塞(各自端口缓存消耗超过了阈值),又都在等待对方释放资源,从而导致的“僵持状态”(所有交换机的数据流永久堵塞)。
ddc的组网下,就不存在pfc的死锁问题。因为,站在整个网络的角度,所有ncp和ncf可以看成一台设备。对于ai服务器来说,整个ddc,就是一个交换机,不存在多级交换机。所以,就不存在死锁。
另外,根据ddc的数据转发机制,可在接口处部署ecn(显式拥塞通知)。
ecn机制下,网络设备一旦检测到roce v2流量出现了拥塞(内部的credit和缓存机制无法支撑突发流量),就会向服务器端发送cnp(congestion notification packets,拥塞通知报文),要求降速。  
分布式os,提升可靠性
最后再看看管理控制平面。
前面我们提到,在ddc架构中,框式设备的管理功能变成了ncc(网络云控制器)。ncc非常重要,如果采用单点式的方式,万一出现问题,就会导致整网故障。
为了避免出现这样的问题,ddc可以取消ncc的集中控制面,构建分布式os(操作系统)。
基于分布式os,可以基于sdn运维控制器,通过标准接口(netconf、grpc等)配置管理设备。这样的话,每台ncp和ncf独立管理,有独立的控制面和管理面,大大提升了系统的可靠性,也更加便于部署。
█ ddc的商用进展
综上所述,相对传统组网,ddc在组网规模、扩展能力、可靠性、成本、部署速度方面,拥有显著优势。它是网络技术升级的产物,提供了一种颠覆原有网络架构的思路,可以实现网络硬件的解耦、网络架构的统一、转发容量的扩展。
业界曾经使用openmpi测试套件进行过框式设备和传统组网设备的对比模拟测试。测试结论是:在all-to-all场景下,相较于传统组网,框式设备的带宽利用率提升了约20%(对应gpu利用率提升8%左右)。
正是因为ddc的显著能力优势,现在这项技术已经成为行业的重点发展方向。例如锐捷网络,他们就率先推出了两款可交付的ddc产品,分别是400g ncp交换机——rg-s6930-18qc40f1,以及200g ncf交换机——rg-x56-96f1。
rg-s6930-18qc40f1交换机的高度为2u,提供18个400g的面板口,40个200g的fabric内联口,4个风扇和2个电源。
rg-x56-96f1交换机的高度为4u,提供96个200g的fabric内联口,8个风扇和4个电源。
据悉,锐捷网络会继续研发,持续推出更多适合智算中心网络场景的产品。
█ 最后的话
aigc的崛起,已经掀起了互联网行业的新一轮技术革命。
我们可以看到,越来越多的企业,正在加入这个赛道,参与角逐。这意味着,网络基础设施的升级,迫在眉睫。
ddc的出现,将大幅提升网络基础设施的能力,不仅可以有效应对ai革命对网络基础设施提出的挑战,更将助力整个社会的数字化转型,加速人类数智时代的全面到来。


基于微功率脉冲雷达的运动传感器的电路设计
2Q19英特尔CPU缺货问题加剧 AMD公司股价借势上涨
石英晶振的原理图
人工智能、云计算对未来地面战的影响
区块链资产平台是什么?未来将如何发展?
AIGC到底需要多大的算力?
美国限制14类技术出口清单,你想买的基本都买不到了
变频调速器已广泛应用在国民经济各行业之中
自制简易实用的家用太阳能板
若把华为排除在5G网络建设外,葡萄牙经济将损失11亿欧元
用于可变电压控制的动态DC-DC转换器
5G适应工业互联网的要求当今已是最好的时机
2019世界人工智能大会8月底在上海世博中心开幕
【曦哥论币】4.2比特币行情分析,行情进入窄幅震荡大牛来临
斯坦德机器人亮相LTT东京运输物流展
新型的铁电半导体场效应晶体管已被成功研制出
物联网卡是一把双刃剑
海信手机金刚4评测 各方面的表现都可圈可点
价格战对消费者来说 是入手空调的最好时机
RFID石油可视化管理-解密中东土豪管理财富的秘密