Scale up是否有办法解除或减少软件和硬件的耦合?|超节点公开课Q&A优选

Q1
薛小明:Scale up有哪些技术挑战?
欧阳捷:首先,Scale up软硬件耦合很深,它的软件栈跟硬件、互联引擎之间的关联,以及与switch之间的关联,都是比较深的。
Q2
Zaiping:中国短期内(1-2年),Scale up域最大支持的GPU数量,会在什么量级上?
欧阳捷:我们可以看到常见的有NVL72、华为384,这个量级是目前比较多的,比较高端的是这个量级。但其实更常见的还是8、16、32这种量级。
Q3
黄梦龙:怎么看光铜的关系?
欧阳捷:Scaleup链路里面光和铜都会有,铜缆又分为有源和无源两种,他们就是电的链路。铜的链路距离一般比较短,尤其在高速的情况下,比如说112GBPS情况下,它的长度只有两三米,56G是3米,112G可能只有2米,所以它是近距离通信。有源铜缆距离会远一点,但是也不会超过6、7米,6、7米大概是个极限。
光的特点是距离比较长,理论上可以到30米,但实际在scaleup领域光链路通常也不超过10米,因为距离越长延迟越大,而Scaleup通信对延迟特别敏感。
延迟指标来看,光差不多是每米五个纳秒,电大概每米是四个纳秒,大概是这个水准。大家可以推算,每增加10米它的延迟还是很明显的。电链路的特点是成本低损耗高,高频情况下电能的起伏效应是比较明显的,而且损耗会随着距离快速增加。尤其对112G的速度,它很难做到很好。光的特点是成本高,抗干扰能力强,但是光模块的故障率又是比较高的。
所以光和铜的选择各有利弊。
Q4
刘梦楠:Scale up光和铜方案谁优谁劣,未来趋势如何?目前看上去光方案在Scale up方面进展很快?
欧阳捷:光和铜各有优劣,一般在规模比较小的时候是铜优先,因为铜比较便宜,而且在短距离场景下性能还不错。距离拉大的话,光可能更合适,但是代价也更高。
Q5
Hunter:Scale up带宽和算力、访存带宽之间关系?
欧阳捷:Scale up带宽的选择,我们分两步来看:首先是算力和访存之间,这里我们分两步推导:第一步从算力推访存带宽,第二步从访存带宽推Scale up的通信带宽。
算力和访存带宽是什么关系呢?当运算强度大时,可能GPU对数据的复用率高,这时算力是瓶颈,内存带宽要求不高。当运算强度低,但是数据用量大时,可能内存是瓶颈。所以,不同应用、不同场景,需求是不一样的。
比如大模型训练,我们可以给出一个大家认为比较平衡的方式。大模型训练情况下,我们以FP16的算力,如果需求是1000TFLOPS,那么它内存带宽是3000G,匹配的比例就是TFLOPS跟GB/s大概是1:3的比例。在大模型推理时,int8量化这种大模型推理2000TFLOPS的FP16算力,对应的内存大概是1500GB/s,比例是1:0.75左右。
也就是说根据应用场景不同,是训练还是推理,算力跟内存之间有一个比例关系。
内存带宽跟Scale up通信带宽的比例大概是多少呢?大概是6:1到8:1之间,按这个速度来算就比较合理。这其实也是参照了英伟达比例,应该也是大家认为比较合理的。这样,大家就可以算出来GPU应该怎么选择Scale up 带宽。
Q6
小飞象:大模型推理是否比训练更需要超节点集群?
欧阳捷:应该是都很需要,不能说更需要。
前面特别有一章讲到推理和训练对Scaleup的需求是有一点区别的,包括训练的同步、通讯密度更大,延迟要求更高,通信量更大。推理会好一些,它本身的规模也小一些,互联也趋于比较稳定的连接,延迟不要太高,它有一个下限容忍度。同时,推理的数据量、通信复杂度都要低一些。
总的来说,他们各有特点,但不能说是谁更需要。
Q7
史之星:Scale up是否有办法解除或减少软件和硬件的耦合?
欧阳捷:减少软件和硬件的耦合是一个好的想法,但是我们要看到,其实Scale up整个系统和网络效率的优势,恰恰是在软件和硬件的耦合。要解耦也可以做到,但常常会损失掉性能。所以这两者是取舍的关系,减少耦合性能会下降,正是因为它的软硬件耦合很强,所以性能很高,是这么一个关系。
Q8
中国卓:请问老师,有GPU厂商在自研Scale up么?
欧阳捷:这是没问题的,因为大家在看到Scaleup趋势之前,很多都是在用PCIe的方式在做,但是也很少会全心去做一种,GPU厂商不愿意全心去做一种Scaleup,是因为涉及到生态的支撑问题,可能GPU厂商只做了自己连,并没有switch或者别的东西连不上,别的switch供应不上也没有用。
所以是有GPU厂商在做,但是长远来看,用开放的或者由第三方厂商来提供比较好。
Q9
贾令宇:探微的ACCLink是怎么作为产品交付的?是IP、芯片还是方案?
欧阳捷:我们的ACCLink属于互联引擎IP,主要作为IP来交付,作为IP核嵌入到GPU芯片里。
Q10
陈争胜:怎么看待NVLink的开放?
欧阳捷:这个开放对国内的产业链影响很小,首先是对国内有一些限制,再一个它的开放并不是完全的开放,包括它的协议、内部通信的原理这些详细的东西并没有开放,只是能够把它作为一个整体来使用。对国内的生态也有一些问题,因为国内的GPU厂商有国产替代的需求,也是为了摆脱供应链的限制。如果在其中又采用了NVLink的产品,是无法解决完整的国产替代的,而且供应链的安全问题也没有解决。
所以NVLink的开放对国内的生态影响是很小的。
Q11
怎么看待国内GPU和互联相关的生态?
欧阳捷:我们看到,现在国内GPU公司上市的比较多,GPU算力赶超速度也很快,国产替代有很大的潜力。国内在Scale out领域,像智能网卡、交换芯片这一块发展还行。
Q12
Eason:老师怎么看待Scale up协议与Scale out协议的差异,未来是否有可能统一?
欧阳捷:Scaleup、Scaleout的应用场景是有明显区别的。Scaleout协议面对的场景,网络更加复杂,连接的规模、层级数更多,对于延迟没有那么高的要求。Scaleup协议规模比较小,对延迟极度敏感。
Scaleout协议,有些基本的东西会有不同。比如以太网,包括x以太网协议,它的报文的头部就比较大、比较重。它的层次、隧道可以一层一层的协议套,可以套的很大,有点不太在乎开销,因为对延迟没有那么敏感。而Scaleup不行,它的头很轻,对于很小的数据量传输,还得做到很高的效率,所以头要轻,嵌套不能多,甚至是尽量少的嵌套,并且数据包不会特别长。这是在报文层面的差异。
管理协议方面,也会有很多操作上的差别。因为Scaleout网络规模大、层级多,管理相关的协议就很多。Scaleup就不需要,因为来不及,实际上它需要软件参与的更多来配合,Scaleout更多要靠网络节点之间自通讯来解决互相的协商问题。从这个层面来讲,Scaleup、Scaleout也是有很明显的区别的。
所以,这两种协议很难统一。如果要放在一起,应该也是两个分协议比较好,或者是两个大的选项比较好,不太可能统一,是这个逻辑。
Q13
林浩Lam Ho:谷歌TPU为什么可以做到9216个节点互联?
欧阳捷:我只是大概有一些了解,因为谷歌是私有节点,私有的Scaleup部署其实可以有很多自己的设计,可以少一些限制。
谷歌的网络特点是它是Torus3D结构,这个结构比较特别,不一定适合其他家。因为这种结构的延迟是偏大的,当然谷歌在光技术方面带宽会做的非常大,有自己的一些特点。这种做法有很强的定制属性,不一定适合其他家。
Q14
Yinlong Lu:探微的IP和XPU是通过AXI协议接口对接的,对吧?那对XPU端的AXI接口有什么要求?
欧阳捷:Scaleup协议本身就是这么规定的,一般就是AXI接口来接业务接口。
我们刚才讲了三个接口,首先是主机接口,主机接口通常是AXI通道的;其次是管理接口,来管理接口APP;最后是Serdes这种链路接口。
这里其实也谈不上特殊要求,但确实有一些定制,因为不同协议的接口定义是有区别的。比如说在网计算,在GPU侧需要通过总线来发现在网计算的计算类型和数据类型,这就需要总线上能够支持,所以这里是有一些要求的,因为要做到一些功能,就需要有特定的支持和要求。
-END-
夜雨聆风
