超高帶寬、超低延遲、超高可靠,這是大模型訓(xùn)練對(duì)于網(wǎng)絡(luò)的要求。
多年來,TCP/IP協(xié)議一直是互聯(lián)網(wǎng)通信的支柱,但對(duì)于AI網(wǎng)絡(luò)來說,TCP/IP 在某些方面存在著致命的缺點(diǎn)。TCP/IP協(xié)議的時(shí)延較高,通常在數(shù)十微秒左右,同時(shí)還會(huì)對(duì)CPU造成嚴(yán)重的負(fù)載。RDMA能直接通過網(wǎng)絡(luò)接口訪問內(nèi)存數(shù)據(jù),無需操作系統(tǒng)內(nèi)核的介入。這允許高吞吐、低延遲的網(wǎng)絡(luò)通信,尤其適合在大規(guī)模并行計(jì)算機(jī)集群中使用。
RDMA技術(shù)有四種實(shí)現(xiàn):InfiniBand、RoCEv1、RoCEv2和iWARP。其中,RoCEv1已被棄用,iWARP也不太常用。目前業(yè)界常用的網(wǎng)絡(luò)解決方案是InfiniBand和RoCEv2。
那么,InfiniBand和RoCE,誰更適合AI數(shù)據(jù)中心網(wǎng)絡(luò)?
HPC/AI 工作負(fù)載對(duì)網(wǎng)絡(luò)有什么要求?
目前數(shù)據(jù)中心大多采用二層網(wǎng)絡(luò)架構(gòu),而AI 集群是為執(zhí)行復(fù)雜的大規(guī)模 AI 任務(wù)構(gòu)建的超級(jí)計(jì)算機(jī)。計(jì)算機(jī)工作負(fù)載在多個(gè) GPU 上并行運(yùn)行,需要得到高度利用。因此,相較于傳統(tǒng)數(shù)據(jù)中心網(wǎng)絡(luò),AI數(shù)據(jù)中心網(wǎng)絡(luò)面臨著額外的復(fù)雜性:
并行計(jì)算:AI 工作負(fù)載是運(yùn)行相同應(yīng)用程序/計(jì)算任務(wù)的多臺(tái)機(jī)器的統(tǒng)一基礎(chǔ)設(shè)施;
規(guī)模:HPC/AI任務(wù)的規(guī)模可以達(dá)到數(shù)千個(gè)計(jì)算引擎(如GPU、CPU、FPGA 等);
作業(yè)類型:不同的任務(wù)在大小、運(yùn)行持續(xù)時(shí)間、需要考慮的數(shù)據(jù)集大小和數(shù)量、需要生成的答案類型以及用于編碼應(yīng)用程序的不同語言和它運(yùn)行的硬件類型等方面有所不同,這都會(huì)導(dǎo)致為運(yùn)行HPC/AI工作負(fù)載而構(gòu)建的網(wǎng)絡(luò)內(nèi)流量模式不斷地變化;
無損:在傳統(tǒng)數(shù)據(jù)中心中,丟失的消息會(huì)重傳,而在AI 工作負(fù)載中,丟失消息意味著整個(gè)計(jì)算要么錯(cuò)誤,要么被卡住。因此,AI 數(shù)據(jù)中心需要一個(gè)無損的網(wǎng)絡(luò)。
帶寬:高帶寬流量需要在服務(wù)器之間運(yùn)行,以便應(yīng)用程序能夠獲取數(shù)據(jù)。在現(xiàn)代部署中,AI 或其他高性能計(jì)算功能的每個(gè)計(jì)算引擎的接口速度達(dá)到 400Gbps。
這些復(fù)雜性都對(duì)AI 網(wǎng)絡(luò)提出了重大挑戰(zhàn),因此AI 數(shù)據(jù)中心網(wǎng)絡(luò)需要具有高帶寬、低延遲、無抖動(dòng)、無數(shù)據(jù)包丟失和長期穩(wěn)定等特點(diǎn)。
從TCP/IP到RDMA
對(duì)于HPC/AI等低延遲、高I/O并發(fā)的應(yīng)用,現(xiàn)有的TCP/IP軟硬件架構(gòu)無法滿足應(yīng)用需求。傳統(tǒng)的TCP/IP網(wǎng)絡(luò)通信使用內(nèi)核來發(fā)送消息,這種通信模式具有較高的數(shù)據(jù)移動(dòng)和數(shù)據(jù)復(fù)制開銷。比如,在典型的 IP 數(shù)據(jù)傳輸中,當(dāng)一臺(tái)計(jì)算機(jī)上的應(yīng)用程序向另一臺(tái)計(jì)算機(jī)上的應(yīng)用程序發(fā)送數(shù)據(jù)時(shí),接收端會(huì)發(fā)生以下操作:
內(nèi)核必須接收數(shù)據(jù)。
內(nèi)核必須確定數(shù)據(jù)屬于應(yīng)用程序。
內(nèi)核喚醒應(yīng)用程序。
內(nèi)核等待應(yīng)用程序?qū)?nèi)核執(zhí)行系統(tǒng)調(diào)用。
應(yīng)用程序?qū)?shù)據(jù)從內(nèi)核內(nèi)存空間復(fù)制到應(yīng)用程序提供的緩沖區(qū)中。
此過程意味著,如果主機(jī)適配器使用直接內(nèi)存訪問 (DMA),則大多數(shù)網(wǎng)絡(luò)流量都會(huì)在系統(tǒng)主內(nèi)存中復(fù)制。此外,計(jì)算機(jī)還執(zhí)行一些上下文切換以在內(nèi)核和應(yīng)用程序之間進(jìn)行切換。這些上下文切換可能會(huì)導(dǎo)致更高的 CPU 負(fù)載和高流量,同時(shí)減慢其他任務(wù)的速度。
TCP/IP傳輸
與傳統(tǒng)的IP通信不同,RDMA通信繞過了通信過程中的內(nèi)核干預(yù),允許主機(jī)直接訪問另一個(gè)主機(jī)的內(nèi)存,減少了 CPU 開銷。RDMA 協(xié)議使主機(jī)適配器能夠在數(shù)據(jù)包進(jìn)入網(wǎng)絡(luò)后決定哪個(gè)應(yīng)用程序應(yīng)該接收它,以及將其存儲(chǔ)在該應(yīng)用程序內(nèi)存空間中的位置。主機(jī)適配器不是將數(shù)據(jù)包發(fā)送到內(nèi)核進(jìn)行處理并將其復(fù)制到用戶應(yīng)用程序的內(nèi)存中,而是直接將數(shù)據(jù)包內(nèi)容放入應(yīng)用程序緩沖區(qū)中。
RDMA傳輸
RDMA傳輸降低了所涉及的CPU周期數(shù),有助于提高吞吐量和性能。換句話說,RDMA的本質(zhì),是對(duì)于大規(guī)模分布式計(jì)算存儲(chǔ)的場(chǎng)景,讓網(wǎng)卡繞開CPU,配合遠(yuǎn)端服務(wù)器直接存取內(nèi)存,加速服務(wù)器之間的交互,降低時(shí)延,把寶貴的CPU資源用于高價(jià)值的計(jì)算與邏輯控制上。
與傳統(tǒng)TCP/IP網(wǎng)絡(luò)相比,InfiniBand和RoCEv2繞過了內(nèi)核協(xié)議堆棧,延遲性能可以提高幾個(gè)數(shù)量級(jí)。在同一集群內(nèi)的通信可以在單跳中實(shí)現(xiàn)的情況下,實(shí)驗(yàn)測(cè)試表明,繞過內(nèi)核協(xié)議堆棧后,應(yīng)用層的端到端延遲可以從50us(TCP/IP)減少到5us(RoCE)或2us(InfiniBand)。
InfiniBand網(wǎng)絡(luò)簡(jiǎn)介
Infiniband網(wǎng)絡(luò)通過Infiniband適配器或交換機(jī)而不是以太網(wǎng)來實(shí)現(xiàn)數(shù)據(jù)傳輸。特定類型的以太網(wǎng)交換機(jī)的端口到端口延遲為 230 ns,而具有相同端口數(shù)量的 InfiniBand 交換機(jī)的延遲為 100 ns。
InfiniBand網(wǎng)絡(luò)的關(guān)鍵組件包括子網(wǎng)管理器(SM)、IB網(wǎng)卡、IB交換機(jī)和IB線纜。InfiniBand交換機(jī)不運(yùn)行任何路由協(xié)議,整個(gè)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)表由集中式子網(wǎng)管理器計(jì)算和分發(fā)。除了轉(zhuǎn)發(fā)表外,SM還負(fù)責(zé)管理InfiniBand子網(wǎng)中的分區(qū)和QoS等配置。InfiniBand網(wǎng)絡(luò)需要專用線纜和光學(xué)模塊來互連交換機(jī)并將交換機(jī)連接到網(wǎng)卡。
本地?zé)o損網(wǎng)絡(luò)
InfiniBand網(wǎng)絡(luò)利用基于信用令牌機(jī)制,從根本上避免緩沖區(qū)溢出和數(shù)據(jù)包丟失。發(fā)送端只有在確認(rèn)接收端有足夠的信用來接受相應(yīng)數(shù)量的報(bào)文后才會(huì)啟動(dòng)分組傳輸。
InfiniBand網(wǎng)絡(luò)中的每個(gè)鏈路都有一個(gè)預(yù)定的緩沖區(qū)。發(fā)送端不會(huì)傳輸超過接收端可用的預(yù)定緩沖區(qū)大小的數(shù)據(jù)。一旦接收端完成轉(zhuǎn)發(fā),就會(huì)釋放緩沖區(qū),并將當(dāng)前可用的預(yù)定緩沖區(qū)大小持續(xù)返回給發(fā)送端。這種鏈路級(jí)流量控制機(jī)制確保了發(fā)送端不會(huì)發(fā)送過多的數(shù)據(jù),防止網(wǎng)絡(luò)緩沖區(qū)溢出和數(shù)據(jù)包丟失。
網(wǎng)卡擴(kuò)展能力
InfiniBand的自適應(yīng)路由基于每包動(dòng)態(tài)路由,確保大規(guī)模部署中網(wǎng)絡(luò)的最佳利用。InfiniBand網(wǎng)絡(luò)有許多大型GPU集群的例子,如百度人工智能云和微軟Azure。
InfiniBand網(wǎng)卡在速度方面一直在快速發(fā)展,200Gbps HDR已經(jīng)大規(guī)模部署商用,400Gbps NDR的網(wǎng)卡也開始商業(yè)部署。目前,市場(chǎng)上有英偉達(dá)、英特爾、思科和HPE等主要的InfiniBand網(wǎng)絡(luò)解決方案和配套設(shè)備提供商。其中,英偉達(dá)占有最高的市場(chǎng)份額,超過70%。下圖顯示了常用的InfiniBand網(wǎng)卡。
RoCE v2網(wǎng)絡(luò)簡(jiǎn)介
RoCE通過以太網(wǎng)實(shí)現(xiàn)RDMA功能,可以繞過TCP/IP并使用硬件卸載,從而降低CPU利用率。RoCE有兩個(gè)主要版本:RoCEv1和RoCEv2。RoCEv1是基于以太網(wǎng)鏈路層實(shí)現(xiàn)的RDMA協(xié)議。交換機(jī)需要支持PFC等流控技術(shù),以保證物理層的可靠傳輸。RoCEv2是在以太網(wǎng)TCP/IP協(xié)議的UDP層實(shí)現(xiàn)的,引入IP協(xié)議是為了解決可擴(kuò)展性問題。
RoCEv2支持在第三層以太網(wǎng)絡(luò)上傳輸RDMA路由。RoCEv2將InfiniBand網(wǎng)絡(luò)層替換成以太網(wǎng)鏈路層上的IP和UDP報(bào)頭,這使得在基于IP的傳統(tǒng)路由器之間路由RoCE成為可能。
InfiniBand網(wǎng)絡(luò)在某種程度上是具有SM(子網(wǎng)管理器)的集中管理網(wǎng)絡(luò),而RoCEv2網(wǎng)絡(luò)是一個(gè)純分布式網(wǎng)絡(luò),由支持RoCEv1的NIC和交換機(jī)組成,通常采用兩層體系架構(gòu)。
RoCE網(wǎng)卡的主要供應(yīng)商是英偉達(dá)、英特爾和博通等。PCIe卡是數(shù)據(jù)中心服務(wù)器網(wǎng)卡的主要形式。RDMA卡的端口PHY速度通常從50Gbps開始,當(dāng)前可用的商用網(wǎng)卡可以實(shí)現(xiàn)高達(dá)400Gbps的單端口速度。
目前,大多數(shù)數(shù)據(jù)中心交換機(jī)都支持RDMA流量控制技術(shù),當(dāng)該技術(shù)與支持RoCE的網(wǎng)卡結(jié)合時(shí),可以實(shí)現(xiàn)端到端的RDMA通信。數(shù)據(jù)中心交換機(jī)主要玩家包括思科、HPE、Arista等。高性能交換機(jī)的核心在于它所使用的轉(zhuǎn)發(fā)芯片。當(dāng)前市場(chǎng)上,博通的Tomahawk系列芯片被廣泛應(yīng)用于商業(yè)轉(zhuǎn)發(fā)芯片中。其中,Tomahawk3系列芯片是目前交換機(jī)中較為常用的,市場(chǎng)上支持Tomahawk4系列芯片的交換機(jī)也在逐漸增加。
IB vs.RoCE
與InfiniBand相比,RoCE具有更大的通用性和相對(duì)較低的成本。它不僅可以用于構(gòu)建高性能RDMA網(wǎng)絡(luò),還可以用于傳統(tǒng)以太網(wǎng)。然而,在交換機(jī)上配置Headroom、PFC(基于優(yōu)先級(jí)的流量控制)和ECN(顯式擁塞通知)等參數(shù)可能會(huì)很復(fù)雜。在大規(guī)模部署中,RoCE網(wǎng)絡(luò)的總體吞吐量性能可能略低于InfiniBand網(wǎng)絡(luò)。
從技術(shù)角度來看,InfiniBand采用了多種技術(shù)來提高網(wǎng)絡(luò)轉(zhuǎn)發(fā)性能,減少故障恢復(fù)時(shí)間,提高可擴(kuò)展性,并降低操作復(fù)雜性。
在業(yè)務(wù)性能方面,與RoCEv2相比,InfiniBand的端到端延遲較低,因此構(gòu)建在InfiniBand上的網(wǎng)絡(luò)在應(yīng)用程序級(jí)業(yè)務(wù)性能方面具有優(yōu)勢(shì)。
在帶寬和延遲方面,擁塞和路由等因素會(huì)影響高性能網(wǎng)絡(luò)互連。
擁塞
InfiniBand 使用兩種不同的幀中繼消息來控制擁塞:前向顯式擁塞通知 (FECN) 和后向顯式擁塞通知 (BECN)。當(dāng)網(wǎng)絡(luò)出現(xiàn)擁塞時(shí),F(xiàn)ECN 通知接收設(shè)備,而 BECN 則通知發(fā)送設(shè)備。InfiniBand 將FECN 和 BECN與自適應(yīng)標(biāo)記率相結(jié)合,以減少擁塞。它提供了粗粒度的擁塞控制。
RoCE 上的擁塞控制使用顯式擁塞通知 (ECN),它是 IP 和 TCP 的擴(kuò)展,可以在不丟棄數(shù)據(jù)包的情況下啟用端點(diǎn)網(wǎng)絡(luò)擁塞通知。ECN 在 IP 報(bào)頭上放置一個(gè)標(biāo)記,告訴發(fā)送方存在擁塞。對(duì)于非 ECN 擁塞通信,丟失的數(shù)據(jù)包需要重傳。ECN 減少了 TCP 連接擁塞造成的數(shù)據(jù)包丟失,避免了重傳。更少的重傳可以減少延遲和抖動(dòng),從而提供更好的事務(wù)和吞吐量性能。ECN 也提供粗粒度擁塞控制,與 InfiniBand 相比沒有明顯優(yōu)勢(shì)。
路由
當(dāng)網(wǎng)絡(luò)中出現(xiàn)擁塞時(shí),自適應(yīng)路由會(huì)通過備用路由發(fā)送設(shè)備,以緩解擁塞并加快傳輸速度。RoCE v2 運(yùn)行在 IP 之上。幾十年來,IP 一直通過先進(jìn)的路由算法實(shí)現(xiàn)可路由,現(xiàn)在通過 AI 機(jī)器學(xué)習(xí)可以預(yù)測(cè)擁塞的路由,并自動(dòng)通過更快的路由發(fā)送數(shù)據(jù)包。在路由方面,以太網(wǎng)和 RoCE v2 具有顯著的優(yōu)勢(shì)。
然而,InfiniBand 和 RoCE 對(duì)于尾部延遲沒有做太多處理。尾部延遲對(duì)于 HPC 消息應(yīng)用程序的同步非常重要。
UEC準(zhǔn)備定義新的傳輸協(xié)議
除了InfiniBand 和 RoCE 外,業(yè)界還提出了其他的協(xié)議。
7 月 19 日,超以太網(wǎng)聯(lián)盟 (Ultra Ethernet Consortium,UEC) 正式成立。UEC 的目標(biāo)是超越現(xiàn)有的以太網(wǎng)功能,提供針對(duì)高性能計(jì)算和人工智能進(jìn)行優(yōu)化的高性能、分布式和無損傳輸層。UEC 的創(chuàng)始成員包括 AMD、Arista、博通、思科、Eviden 、HPE、Intel、Meta和微軟,都擁有數(shù)十年的網(wǎng)絡(luò)、人工智能、云和高性能計(jì)算大規(guī)模部署經(jīng)驗(yàn)。
UEC認(rèn)為幾十年前定義的RDMA 在要求極高的 AI/ML 網(wǎng)絡(luò)流量中已過時(shí),RDMA以大流量塊的形式傳輸數(shù)據(jù),這些大流量可能會(huì)導(dǎo)致鏈路不平衡和負(fù)擔(dān)過重?,F(xiàn)在是時(shí)候重新開始為新興應(yīng)用構(gòu)建支持 RDMA 的現(xiàn)代傳輸協(xié)議的時(shí)候了。
據(jù)悉,UEC 傳輸協(xié)議正在開發(fā)中,旨在提供比目前的 RDMA 更好的以太網(wǎng)傳輸(仍支持 RDMA),在提供AI和HPC應(yīng)用程序所需性能的同時(shí)保留以太網(wǎng)/IP的優(yōu)勢(shì)。UEC 傳輸是一種靠近傳輸層的新形式,它有一些語義調(diào)整、擁塞通知協(xié)議,并且增強(qiáng)了安全功能。UEC將提供更靈活的傳輸,不需要無損網(wǎng)絡(luò),允許many-to-many人工智能工作負(fù)載所需的多路徑和無序數(shù)據(jù)包傳輸?shù)裙δ堋?/p>
更多的企業(yè)力量
隨著HPC/AI網(wǎng)絡(luò)的不斷發(fā)展,越來越多的企業(yè)開始推出自研的網(wǎng)絡(luò)協(xié)議或解決方案,以滿足其特定的需求。
騰訊云在其星脈網(wǎng)絡(luò)中采用了自研的星脈 RDMA 網(wǎng)絡(luò),可以讓 GPU 之間直接進(jìn)行數(shù)據(jù)通信,CPU 資源得以節(jié)省,從而提高計(jì)算節(jié)點(diǎn)的整體性能和效率。通過自研端網(wǎng)協(xié)同協(xié)議 TiTa ,星脈網(wǎng)絡(luò)可以實(shí)現(xiàn) 90% 負(fù)載 0 丟包。TiTa 協(xié)議內(nèi)嵌擁塞控制算法,以實(shí)時(shí)監(jiān)控網(wǎng)絡(luò)狀態(tài)并進(jìn)行通信優(yōu)化,使得數(shù)據(jù)傳輸更加流暢且延遲降低。
阿里云磐久PredFabric采用自研的Solar-RDMA高速網(wǎng)絡(luò)協(xié)議,使處理器可以通過load/store指令訪問其他任意服務(wù)器的內(nèi)存,非常適合深度學(xué)習(xí)模型內(nèi)神經(jīng)網(wǎng)絡(luò)的交互形態(tài),相比傳統(tǒng)模式故障自愈時(shí)間和長尾時(shí)延均可降低90%。
華為超融合數(shù)據(jù)中心網(wǎng)絡(luò)使用獨(dú)創(chuàng)的iLossless智能無損算法,通過流量控制技術(shù)、擁塞控制技術(shù)和智能無損存儲(chǔ)網(wǎng)絡(luò)技術(shù)三大關(guān)鍵技術(shù)的相互配合,提前預(yù)防PFC死鎖的發(fā)生、緩解/解除擁塞、實(shí)現(xiàn)對(duì)主機(jī)的快速管控,從而達(dá)到構(gòu)建無損以太網(wǎng)絡(luò),解決傳統(tǒng)以太網(wǎng)絡(luò)擁塞丟包的問題。
不斷增長的市場(chǎng)需求是技術(shù)發(fā)展的根本驅(qū)動(dòng)力。根據(jù) IDC 的數(shù)據(jù),2023 年AI基礎(chǔ)設(shè)施建設(shè)投資將達(dá)到 1540億 美元,到 2026 年將增長到 3000億 美元。2022 年,AI網(wǎng)絡(luò)市場(chǎng)已達(dá)到 20億 美元,其中 InfiniBand 貢獻(xiàn)了 75% 的收入。
在比較InfiniBand和RoCE時(shí),我們可以看到兩者都有各自的優(yōu)勢(shì)和適用場(chǎng)景。IB在高性能計(jì)算領(lǐng)域表現(xiàn)出色,可提供卓越的性能、低延遲和可擴(kuò)展性。RoCE則更容易集成到現(xiàn)有以太網(wǎng)基礎(chǔ)設(shè)施中,并具有較低的成本。而以UEC為代表的新興傳輸協(xié)議也代表了技術(shù)的不斷發(fā)展與創(chuàng)新。唯有適應(yīng)不斷變化的需求,才能保持核心競(jìng)爭(zhēng)力。
審核編輯:湯梓紅
-
數(shù)據(jù)中心
+關(guān)注
關(guān)注
16文章
4630瀏覽量
71885 -
AI
+關(guān)注
關(guān)注
87文章
29805瀏覽量
268102 -
TCP
+關(guān)注
關(guān)注
8文章
1347瀏覽量
78933 -
大模型
+關(guān)注
關(guān)注
2文章
2274瀏覽量
2356
原文標(biāo)題:IB和RoCE,誰更適合AI數(shù)據(jù)中心網(wǎng)絡(luò)?
文章出處:【微信號(hào):SDNLAB,微信公眾號(hào):SDNLAB】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論