智算網絡中Scale-out網絡和Scale-up網絡的本質區別是什么?
一、什么是智算中心的Scale-out網絡和Scale-up網絡
數據中心網絡總體上可分為兩大類:通算網絡和智算網絡。通算網絡主要用于支持傳統的計算任務和應用,如企業的IT系統、網站托管、電子郵件服務等;而智算網絡則專門用于支持人工智能(AI)和機器學習(ML)任務。這類網絡需要更高的計算能力和更低的延遲,以處理大量的數據并執行復雜的計算任務。
當前,主流的機器學習(ML)智算網絡和通算網絡在架構上有很大差異。通算網絡通常只有一張網,而智算網絡則可能包含兩張網。如下圖所示:
智算中心的兩張網中,一張是通過ETH/IB實現GPU之間的RDMA功能的網絡,即所謂的前端網絡,通常稱作Scale-out網絡。一張是GPU之間高速互連,可以實現POD內跨GPU之間的內存的讀寫,即所謂的后端網絡,即通常說的scale-up網絡。
在大模型的智算網絡中,訓練和推理對后端網絡的需求各有不同。以marvell的圖為例,訓練scale-up網絡時所需的帶寬容量要求更高。
二、scale-out和scale-up網絡現狀
Nvidia的scale-up網絡是一種面向GPU互聯的網絡,可以實現GPU算力Scale Up擴展。該網絡采用自研NVLink互聯和NVLink網絡來實現GPU算力Scale Up擴展,相比于基于InfiniBand網絡和基于Ethernet的RoCE網絡形成差異化競爭力。
當前,基于Nvidia的NVLink技術的scale-up網絡廣泛應用于N系統的GPU。以DGX B200 NVL72為例,其由18個compute tray和9個switch tray組成,實現了高效的擴展。這一網絡由Nvidia緊密控制,確保了穩定性與性能。
Scale-out網絡以DGX B200 NVL72為例,每個compte tray的4個智能網卡和1個DPU卡組成。該網絡支持N系IB/ETH或開放的ETH系,如UEC等性能提升方案GSE。國內智算網絡普遍采用基于scale-out開發的架構。
根據Nvidia的解釋,cluster和superpod這兩個概念需要被區分開來。在superpod中,所有的GPU都通過NVLink高速總線互相連接,形成了一個全帶寬互連的域,也就是所謂的scale-up網絡。
Cluster是由所有GPU服務器組成的一個網絡群的總稱,一個cluster可以有多個superpod組成,通過scale-out網絡來連接。Superpod是一個邏輯設備,它代表了一組Pod,這些Pod共享相同的硬件資源和存儲卷。
對于N系的GPU服務器來說,目前的Scale-up的網絡規模一般可以認為是scale-out網絡的十倍。從下圖中 GB200 超級芯片的接口上可以看出,NVLink、InfiniBand、Ethernet 三種網絡的容量配比為,NVLink 網絡 14.4Tb/s,InfiniBand 網絡 1.6Tb/s,Ethernet 網絡 400Gb/s。三種網絡的端口帶寬之比為 NVLink : InfiniBand : Ethernet = 36 : 4 : 1。
"Scale-up的Nvlink網絡,其帶寬是RDMA IB的近10倍,為CPU間數據存儲提供了強大支持。這種網絡主要應用于智能網卡的域中,并在實際應用中作為scale-out網絡發揮作用。"
三、為什么要區別這兩個網絡
本質上,Scale-out和Scale-up兩張網旨在實現GPU間內存數據的高效傳輸。然而,為何要采用雙網絡并制造如此大的騷動呢?
這個主要是起源于兩點,一個是大模型的涌現現象,即對于ML來說,模型越大越好,夸張點說是上不封頂。另外一個就是在目前的大模型訓練的時候,大模型的數據量對于單臺GPU的服務器來說已經太大,必須通過各種的并行處理的方式,把數量的處理和存儲分散到多個GPU中去,這樣也就會帶來一系列的問題,包括各種并行之間的通信開銷,并行分割的開銷,編程的復雜程度等等。例如,Transformer模型的注意力機制和前饋網絡都需要大量的內存和計算資源。更大的GPU內存可以容納整個模型,避免頻繁的分割和通信開銷。
對于大模型訓練,最理想的方式就是一個超級大的supersupersuper chip的GPU,這樣的話,不可以節省并行切割的開銷。但是,現實肯定不現實的,為此,大家就想到了一個辦法,把大模型分解為兩大類,一個是需要在高頻度進行數據交互的,例如張量并行和專家并行。把這些并行處理放置到GPU之間通過超高帶寬,超低時延互連的網絡中進行處理,壓縮他們之間的通訊開銷成本。當然,這個網絡的成本是否非常昂貴的,這就是Scale-up網絡,或 Load-Store/內存語義網絡。這是一個追求極致性能的互連網絡。
另一類方法是將數據分解為相對獨立的并行任務,如流水線并行和數據并行。這類技術被稱為消息語義網絡或scale-out網絡。利用現有的以太網技術體系,結合適度的改造,我們可以在保持較低成本的同時,更好地滿足性能需求。
在scale-out網絡中,RDMA(RoCE)發揮著關鍵作用。盡管它提供了類似內存的訪問模式,但在處理大量小容量內存讀寫時,如張量并行中的數據操作,效率相對較低。因此,我更傾向于不將其歸為內存語義網絡或Load-Store語義網絡。
通過上面兩個網絡的劃分,實現了性能和成本的最優化。
四、時延是這個兩個網絡的本質區別
"現在,我們來探討這兩個網絡的本質差異。在大模型訓練中,它們都負責GPU間的數據傳輸,但存在不可忽視的區別。"
1、動態時延和靜態時延
網絡時延是指數據從發送端到接收端所需的時間。根據您的描述,網絡時延可以分為靜態時延和動態時延兩部分。靜態時延包括基本的互聯、轉發和交換時延,這些是網絡硬件和設計的固有特性,通常與網絡的物理布局和設備性能有關。動態時延與網絡的帶寬、吞吐量和利用率等相關,受網絡當前負載和流量管理策略的影響,因此會隨時間和網絡狀態變化。例如通過UEC對以太網進行優化,主要就是降低了網絡的動態時延。
2、scale-up需要納秒級的時延
"Scale-up網絡,也被稱為總線域網絡,是一種極致性能的網絡結構。在這個領域中,GPU能將其他GPU的存儲視為本地存儲區,實現直接讀寫。因此,時延控制變得極其重要。如果GPU主頻超過1GHz且時鐘周期小于1納秒,例如在內存訪問中,本地內存訪問的典型時延通常低于100納秒。為了匹配這種速度,我們在通過網絡進行內存訪問時,需要將時延控制在1微秒以下。"
為滿足特定業務需求,網絡設計需緊密耦合于業務,摒棄傳統網絡的傳輸層和網絡層。信用機制(Credit)和鏈路層的重傳機制確保可靠性,而非數據包式重傳。
當前,基于PAM4調制和基于ADC和DSP架構的112Gbps和224Gbps SerDes電互聯技術對低時延的scale-up網絡都可視是一個負擔。DSP架構的112Gbps的SerDes的靜態時延約為20納秒,由于算法復雜度的提升,224Gbps SerDes技術的靜態時延可能會更高。當前接口采用的標準RS(544, 514) FEC,在100Gbps吞吐時引入的時延大約為100納秒,因此如果還是使用PAM4的方案的話,信道編碼方面也需要引入全新的FEC方案。
3、scale-out網絡的時延可達到ms級
在scale-out網絡中,傳統網絡通常采用分層架構,例如OSI模型,具有清晰定義的傳輸層和網絡層,以支持更加靈活的通訊和數據傳輸方式。這種分層架構也帶來了時延不可控的代價。
為了解決這個問題,一些新的網絡架構被提出來,例如SDN(軟件定義網絡)和NFV(網絡功能虛擬化)。這些架構可以提供更高的靈活性和可編程性,從而減少時延并提高性能。
傳統數據中心網絡的業務受限于帶寬,直接影響用戶體驗。如圖像、音頻質量,視頻清晰度,文件下載速度等皆與帶寬息息相關。更高的帶寬意味著更大的業務承載量和更優的用戶體驗。為確保用戶感受系統的即時響應,端到端網絡時延需控制在1至10毫秒內,整體時延不超過100毫秒。這是基于人感知能力設定的上限,超出此范圍可能導致用戶感覺系統反應遲緩或不響應。
面向AI/HPC的計算網絡與傳統數據中心網絡在業務特征上具有相似性,如單業務流帶寬遠低于接口或管道帶寬;流級負載均衡提高網絡利用率并避免亂序;異步和準同步通信方式適應業務流間關聯性較弱;聚合后的流量可能在長周期內呈現規律性;對低時延要求不高;端側傳輸層確保可靠性。
考慮到成本和技術親和性,scale-out網絡采用傳統網絡的產業鏈元素,如交換機和光模塊。在此基礎上進行性能升級,如UEC和GSE等,以降低網絡動態時延。盡管如此,基于傳統網絡設計的靜態時延仍需關注。
為了實現超大規模集群和提升技術能力,scale-out網絡通過多級交換機組成的網絡連接。這使得整個網絡的時延降至毫秒級,提高了性能。
Scale-up網絡和scale-out網絡的本質區別在于,scale-up網絡是直接提升機器的配置規格,是最直接的擴展手段,計算和存儲均可通過 Scale-up 的方式來進行擴展,但擴展空間有限,相對成本較高。而scale-out網絡則是通過增加更多的服務器來擴展系統,這樣可以更好地利用資源,提高系統的可擴展性和靈活性 。
五、scale-out和scale-up,是否可以合成一張網呢?
Scale-out網絡與Scale-up網絡分別代表了數據中心網絡的兩種不同發展路徑,它們在設計理念和應用目標上有著顯著差異。Scale-out網絡沿襲了傳統的數據中心架構,而Scale-up網絡則著重于通過提升單一設備的性能來增強整個系統的能力。
傳統網絡技術側重于連接地理分散的節點,實現遠程通訊和信息交換,滿足長距離傳輸、異構設備互聯及多樣化業務的需求。而scale-up網絡則專注于在較小的物理范圍內集成更多資源至單個節點,從而提高系統整體性能并緊密耦合于業務。
為了滿足人工智能(AI)和通用人工智能(AGI)時代智算網絡的需求,僅依靠傳統數據中心網絡的load-store能力或從傳統load-store技術中提升網絡性能已不再足夠。這是因為傳統數據中心網絡技術的演進無法實現scale-up網絡所需的低時延和高可靠性,同時還可能帶來不必要的兼容性負擔。另一方面,基于load-store技術的擴展也無法滿足網絡規模的快速增長需求。這種局限性的根本原因在于兩者的發展目標和出發點存在本質差異。
在業務層面,scale-up/NVLink網絡以load-store語義為基礎,而scale-out/InfiniBand則采用消息語義。有趣的是,224G代際的NVSwitch和InfiniBand交換機規格相近,但這兩種網絡在未來將保持獨立發展,不會融合。
-對此,您有什么看法見解?-
-歡迎在評論區留言探討和分享。-