2023年,以ChatGPT為代表的AIGC大模型全面崛起,成為了整個社會關注的焦點。 大模型表現(xiàn)出了強悍的自然語言理解能力,刷新了人們對AI的認知,也掀起了新一輪的“算力軍備競賽”。 大家都知道,AIGC大模型的入局門檻是很高的。玩AI的三大必備要素——算力、算法和數(shù)據(jù),每一個都意味著巨大的投入。 以算力為例。ChatGPT的技術底座,是基于微調(diào)后的GPT3.5大模型,參數(shù)量多達1750億個。為了完成這個大模型的訓練,微軟專門建設了一個AI超算系統(tǒng),投入了1萬個V100 GPU,總算力消耗約3640 PF-days(即假如每秒計算一千萬億次,需要計算3640天)。 業(yè)內(nèi)頭部廠商近期推出的大模型,參數(shù)量規(guī)模更是達到萬億級別,需要的GPU更多,消耗的算力更大。 這些數(shù)量龐大的GPU,一定需要通過算力集群的方式,協(xié)同完成計算任務。這就意味著,需要一張超高性能、超強可靠的網(wǎng)絡,才能把海量GPU聯(lián)接起來,形成超級計算集群。 那么,問題來了,這張網(wǎng)絡,到底該如何搭建呢?
高性能網(wǎng)絡的挑戰(zhàn) 想要建設一張承載AIGC大模型的網(wǎng)絡,需要考慮的因素非常多。 首先,是網(wǎng)絡規(guī)模。 剛才我們也提到,AI訓練都是10000個GPU起步,也有的達到十萬級。從架構上,目標網(wǎng)絡就必須hold得住這么多的計算節(jié)點。而且,在節(jié)點增加的同時,集群算力盡量線性提升,不能引入過高的通信開銷,損失算力。 其次,是網(wǎng)絡帶寬。 超高性能的GPU,加上千億、萬億參數(shù)的訓練規(guī)模,使得計算節(jié)點之間的通信量,達到了百GB量級。再加上各種并行模式、加速框架的引入,節(jié)點之間的通道帶寬需求會更高。 傳統(tǒng)數(shù)據(jù)中心通用的100Gbps帶寬接入,根本滿足不了這個需求。我們的目標網(wǎng)絡,接入帶寬必須升級到800Gbps、1.6Tbps,甚至更高。 第三,流量調(diào)控。 傳統(tǒng)的網(wǎng)絡架構,在應對AI大模型訓練產(chǎn)生的數(shù)據(jù)流時,存在缺陷。所以,目標網(wǎng)絡需要在架構上做文章,更好地控制數(shù)據(jù)流路徑,讓節(jié)點和通道的流量更均衡,避免發(fā)生擁塞。 第四,協(xié)議升級。 網(wǎng)絡協(xié)議是網(wǎng)絡工作的行為準則。它的好壞,直接決定了網(wǎng)絡的性能、效率和延遲。 傳統(tǒng)數(shù)據(jù)中心的TCP/IP協(xié)議,早已已無法滿足高性能網(wǎng)絡的大帶寬、低時延需求。性能更強的IB(InfiniBand)協(xié)議、RDMA協(xié)議,已然成為主流。有實力的廠家,還會基于自家硬件設備,自研更高效的協(xié)議。 第五,運維簡化。 這就不用多說了。超大規(guī)模的網(wǎng)絡,如果還是采用傳統(tǒng)運維,不僅效率跟不上,還會導致更長的故障恢復周期,損失算力,損失資金。 目前,行業(yè)里的“大模頭”們,都會根據(jù)自己技術和資金實力,選擇商用網(wǎng)絡組網(wǎng),或者自研網(wǎng)絡協(xié)議。 大家心里很清楚,想要贏得這場比賽,除了算力芯片足夠強之外,網(wǎng)絡的性能表現(xiàn)是至關重要的。網(wǎng)絡越強,集群的算力提升就越大,完成模型訓練的時間就越短,成本也就越低。
星脈網(wǎng)絡,鵝廠的算力集群殺手锏 對于AI大模型這場熱潮,騰訊當然不會缺席。他們推出了業(yè)界領先的高性能計算網(wǎng)絡架構——星脈。 騰訊深耕互聯(lián)網(wǎng)行業(yè)20多年,從QQ到微信,他們的超大規(guī)模業(yè)務承載能力,可以說是行業(yè)頂尖的。在網(wǎng)絡技術的理解和駕馭能力上,也是世界領先水平。而星脈,則是他們多年技術研究的精髓,是真正的殺手锏。 根據(jù)實測,星脈實現(xiàn)了AI大模型通信性能的10倍提升、GPU利用率提升40%、通信時延降低40%。 基于全自研的網(wǎng)絡硬件平臺,星脈可以實現(xiàn)網(wǎng)絡建設成本降低30%,模型訓練成本節(jié)省30%~60%。 星脈網(wǎng)絡的算力效率,遠高于業(yè)界主流值 ? 接下來,我們不妨深入解讀一下,星脈到底采用了哪些黑科技。在前面所提到的幾項挑戰(zhàn)上,騰訊團隊又是如何應對的。 ?
網(wǎng)絡規(guī)模
在組網(wǎng)架構上,星脈網(wǎng)絡采用無阻塞胖樹(Fat-Tree)拓撲,分為Block-Pod-Cluster三級。 星脈網(wǎng)絡的架構 ? Block是最小單元,包括256個GPU。 ? Pod是典型集群規(guī)模,包括16~64個Block,也就是4096~16384個GPU。 ? 多個Block可以組成Cluster。1個Cluster最大支持16個Pod,也就是65536~262144個GPU。 ? 26萬個GPU,這個規(guī)模完全能夠滿足目前的訓練需求。 ?
網(wǎng)絡帶寬
騰訊星脈網(wǎng)絡為每個計算節(jié)點提供了3.2T的超高通信帶寬。 單個服務器(帶有8個GPU)就是一個計算節(jié)點。每個服務器有8塊RoCE網(wǎng)卡。每塊網(wǎng)卡的接口速率是400Gbps。 RoCE,是RDMA over Converged Ethernet(基于聚合以太網(wǎng)的RDMA)。RDMA(遠程直接GPU通信訪問)我們以前介紹過很多次。它允許計算節(jié)點之間直接通過內(nèi)存進行數(shù)據(jù)傳輸,無需操作系統(tǒng)內(nèi)核和CPU的參與,能夠大幅減小CPU負荷,降低延遲,提高吞吐量。 ? 大帶寬帶來的優(yōu)勢是非常顯著的。對于AllReduce和All-to-All這兩種典型通信模式,在不同集群規(guī)模下,1.6Tbps超帶寬都會帶來10倍以上的通信性能提升(相比100Gbps帶寬)。 ? 以AllReduce模式、64 GPU規(guī)模為例,采用1.6Tbps超帶寬網(wǎng)絡,將使得AllReduce的耗時大幅縮短14倍,通信占比從35%減少到3.7%,最終使得單次迭代的訓練耗時減少32%。從集群算力的角度來看,相當于用同樣的計算資源,系統(tǒng)算力卻提升48%。 ?
流量調(diào)控
為了提升集群的通信效率,星脈網(wǎng)絡對通信流量路徑進行了優(yōu)化,引入了“多軌道流量聚合架構”。 該架構將不同服務器上位于相同位置的網(wǎng)卡,都歸屬于同一個ToR switch(機柜頂部的匯聚交換機)。整個計算網(wǎng)絡平面,從物理上被劃分為8個獨立并行的軌道平面。 ? 在工作時,GPU之間的數(shù)據(jù),可以用多個軌道并行傳輸加速。并且,大部分流量,都聚合在軌道平面內(nèi)傳輸(只經(jīng)過一級 ToR switch)。只有小部分流量,會跨軌道平面?zhèn)鬏敚ㄐ枰?jīng)過二級 switch)。這大幅減輕了網(wǎng)絡壓力。 ? 星脈網(wǎng)絡還采用了“異構網(wǎng)絡自適應通信技術”。 在集群中,GPU之間的通信包括機間網(wǎng)絡(網(wǎng)卡+交換機)與機內(nèi)網(wǎng)絡( NVLink/NVSwitch 網(wǎng)絡、PCIe 總線網(wǎng)絡)。 星脈網(wǎng)絡將機間、機內(nèi)兩種網(wǎng)絡同時利用起來,實現(xiàn)了異構網(wǎng)絡之間的聯(lián)合通信優(yōu)化。 例如,在All-to-All通信模式時,每個GPU都會和其它服務器的不同GPU通信。
? 基于異構網(wǎng)絡自適應通信技術,不同服務器上相同位置的GPU,在同一軌道平面,仍然走機間網(wǎng)絡通信。 ? 但是,要去往不同位置的GPU(比如host1上的GPU1,需要向其它host上的GPU8 送數(shù)據(jù)),則先通過機內(nèi)網(wǎng)絡,轉(zhuǎn)發(fā)到host1上的GPU8上,然后通過機間網(wǎng)絡,來完成通信。 ? 這樣一來,機間網(wǎng)絡的流量,大部分都聚合在軌道內(nèi)傳輸(只經(jīng)過一級 ToR switch)。機間網(wǎng)絡的流量大幅減少,沖擊概率也明顯下降,從而提供了整網(wǎng)性能。 ? 根據(jù)實測,異構網(wǎng)絡通信在大規(guī)模All-to-All場景下,對中小數(shù)據(jù)包的傳輸性能提升在30%左右。 ?
協(xié)議升級
星脈網(wǎng)絡采用的“自研端網(wǎng)協(xié)同協(xié)議TiTa”,可以提供更高的網(wǎng)絡通信性能,非常適合大規(guī)模參數(shù)模型訓練。 TiTa協(xié)議內(nèi)嵌擁塞控制算法,可以實時監(jiān)控網(wǎng)絡狀態(tài)并進行通信優(yōu)化。它就好比是一個智能交通管理系統(tǒng),可以讓網(wǎng)絡上的數(shù)據(jù)傳輸更加通暢。 TiTa協(xié)議的處理方式 ? 面對定制設計的高性能組網(wǎng)架構,業(yè)界開源的GPU集合通信庫(例如NCCL)并不能將網(wǎng)絡的通信性能發(fā)揮到極致。為此,騰訊推出了“高性能集合通信庫TCCL(Tencent Collective Communication Library)”。 TCCL就像一個智能導航系統(tǒng)。它在網(wǎng)卡設備管理、全局網(wǎng)絡路由、拓撲感知親和性調(diào)度、網(wǎng)絡故障自動告警等方面進行了深度定制,對網(wǎng)絡了如指掌,讓流量路徑更加合理。 例如,從GPU A到GPU B,原來需要經(jīng)過9個路口。有了TCCL導航之后,只需要走4個路口,提升了效率。 根據(jù)實測,在AllReduce/AllGather/ReduceScatter等常用通信模式下,TCCL能給星脈網(wǎng)絡帶來40%左右的通信性能提升。
部署和運維簡化
算力集群網(wǎng)絡越龐大,它的部署和維護難度也就越大。 為了提升星脈網(wǎng)絡的可靠性,騰訊自研了一套全棧網(wǎng)絡運營系統(tǒng),實現(xiàn)了“端網(wǎng)部署一體化”、“一鍵故障定位”、“業(yè)務無感秒級網(wǎng)絡自愈”,對網(wǎng)絡進行全方位保駕護航。 先看看“端網(wǎng)部署一體化”。 部署一直都是高性能網(wǎng)絡的痛點。在星脈網(wǎng)絡之前,根據(jù)統(tǒng)計,90%的高性能網(wǎng)絡故障問題,是因為配置錯誤導致。原因很簡單,網(wǎng)卡的配置套餐太多(取決于架構版本、業(yè)務類型和網(wǎng)卡類型),人為操作很難保證不出錯。 騰訊的解決方法,是將配置過程自動化。 他們通過API的方式,實現(xiàn)單臺/多臺交換機的并行部署能力。 在正式部署前,系統(tǒng)會自動對基礎網(wǎng)絡環(huán)境進行校驗,看看上級交換機的配置是否合理等。 然后,識別外部因素,自動選擇配置模板。 配置完成后,為了保證交付質(zhì)量,運營平臺還會進行自動化驗收,包括一系列的性能和可靠性測試。 ? 所有工作完成后,系統(tǒng)才會進入交付狀態(tài)。 ? 根據(jù)數(shù)據(jù)統(tǒng)計,基于端網(wǎng)一體部署能力,大模型訓練系統(tǒng)的整體部署時間從19天縮減到4.5天,并保證了基礎配置100%準確。 ? 再看看運維階段的“一鍵故障定位”。 星脈網(wǎng)絡具有端網(wǎng)高度協(xié)同的特點,增加了端側的運營能力。運營平臺通過數(shù)據(jù)采集模塊,獲取端側服務器和網(wǎng)絡側交換機的數(shù)據(jù),聯(lián)動網(wǎng)管拓撲信息,可以做到快速診斷與自動化檢查。 一鍵故障定位,可以快速定界問題方向,精準推送到對應團隊的運營人員(網(wǎng)絡or業(yè)務),減少溝通成本,劃分責任界限。而且,它還有利于快速定位問題根因,并給出解決方案。 最后,是“業(yè)務無感秒級網(wǎng)絡自愈”。 在網(wǎng)絡運行的過程中,故障是無法避免的。 為了將故障自愈時間縮短到極致,騰訊推出了秒級故障自愈產(chǎn)品——“HASH DODGING”。 這是一種基于Hash偏移算法的網(wǎng)絡相對路徑控制方法。即,終端僅需修改數(shù)據(jù)包頭特定字段(如IP頭TOS字段)的值,即可使得修改后的包傳輸路徑與修改前路徑無公共節(jié)點。 在網(wǎng)絡數(shù)據(jù)平面發(fā)生故障(如靜默丟包、路由黑洞)時,該方案可以幫助TCP快速繞過故障點,不會產(chǎn)生對標準拓撲及特定源端口號的依賴。
單路徑傳輸協(xié)議下,使用本方案,實現(xiàn)確定性換路 ? ? █ 結語 以上,就是對騰訊星脈高性能計算網(wǎng)絡的關鍵技術分析。 這些關鍵技術,揭示了高性能網(wǎng)絡的發(fā)展思路和演進方向。隨著AI大模型的深入發(fā)展,人類對AI算力的需求會不斷增加。 日前,騰訊云發(fā)布的新一代HCC高性能計算集群,正是基于星脈高性能網(wǎng)絡打造,算力性能較前代提升3倍,為AI大模型訓練構筑可靠的高性能網(wǎng)絡底座。 未來已來,這場圍繞算力和連接力的角逐已經(jīng)開始。更多的精彩還在后面,讓我們拭目以待吧!
-
網(wǎng)絡
+關注
關注
14文章
8026瀏覽量
92235 -
AI
+關注
關注
88文章
37065瀏覽量
290374 -
TCP
+關注
關注
8文章
1413瀏覽量
82640
原文標題:死磕AI大模型網(wǎng)絡,鵝廠出招了!
文章出處:【微信號:鮮棗課堂,微信公眾號:鮮棗課堂】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
用TINA如何搭建仿真模型?


Firefly支持AI引擎Tengine,性能提升,輕松搭建AI計算框架
【AI學習】第3篇--人工神經(jīng)網(wǎng)絡
使用STM32CubeMX和X-CUBE-AI生成代碼
輕量化神經(jīng)網(wǎng)絡的相關資料下載
介紹在STM32cubeIDE上部署AI模型的系列教程
神經(jīng)網(wǎng)絡模型部署到MCU 之 環(huán)境搭建教程

simulink搭建的摩擦模型

卷積神經(jīng)網(wǎng)絡模型搭建
虹科分享 | 谷歌Vertex AI平臺使用Redis搭建大語言模型

評論