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