什么是RDMA
在介紹RDMA網絡之前,我們先來了解下什么是DMA 。DMA(Direct Memory Access)是一種允許外部IO設備直接訪問內存,而不需要通過CPU的技術。DMA技術可以顯著提高數據傳輸的效率和速度,因為它避免了CPU和Memory之間的數據拷貝,從而減少了CPU的負擔,并提高了數據傳輸的效率。RDMA(Remote Direct Memory Access )則是允許一臺服務器直接訪問其他服務器上的Memory 。在智算時代,RDMA技術被廣泛應用于大規模分布式訓練和推理場景中。
為什么要使用 RDMA
隨著AI大模型的快速發展,模型參數量、數據量的不斷增加,單個GPU服務器已經難以滿足模型訓練和推理的算力資源要求,分布式多機多卡的訓練與推理已經成為必然。多機多卡的訓推場景對算力網絡提出了以下要求:
1. 高吞吐量:大模型參數量、數據量巨大,每一次訓練推理都是幾百G,甚至幾十T的數據量;
2. 低延遲:大模型訓練推理過程中,數據的傳輸延遲對訓練推理的效率影響很大,當網絡延遲成為瓶頸時,會導致GPU空閑等待數據傳輸完成,從而降低整體的訓練效率,進而造成算力的浪費;
3. 高可靠性 :大模型訓練推理過程中,數據的傳輸可靠性對訓練推理的效率影響很大,當網絡有丟包重傳時,會導致所有GPU閑置,同樣造成算力的巨大浪費。
傳統以太網的設計和實現無法滿足以上要求,已經成為大模型訓推場景下算力集群的瓶頸?;赗DMA 技術的網絡從底層技術原理和設計實現上,滿足了高吞吐、低延遲、無丟包的要求,從而提升了算力集群的效率。
RDMA的網絡實現
在AI大模型訓推場景中使用 RMDA技術的網絡包括:
? In?niband簡稱IB網絡;
? RoCE(RDMA over Coveraged Ethernet)網絡
IB網絡
IB網絡設計為無損網絡,在發送端會動態監測接收端的緩存能力,只有在接收端緩存區有足夠空間時,才會發送數據。這得益于其完全區別于傳統以太網的,自定義的4層網絡架構(物理層、鏈路層、網絡層、傳輸層)。在鏈路層集成了流控協議,保障發送端速率不會超出接收端的接收速率。傳輸層中創建的虛擬通道可直接被上層應用使用,不再需要通過操作系統協議棧。
*圖片來源于IBTA(InfiniBand Trade Association )
IB網絡的主要廠商是已經被英偉達收購的Mellanox公司,其擁有IB網絡的核心技術專利,占有全球將近90%的市場份額,是高性能計算集群的首選。IB網絡的優勢在于超低延遲,高吞吐,交付部署簡單,但需要專門的網卡和交換機支持。IB網絡的發展路線圖如下:
*圖片來源于IBTA(InfiniBand Trade Association )
對應英偉達公司的產品線如下:
RoCE網絡
RoCE由IBTA(In?niBand Trade Association)制定,通過ECN和PFC實現流量控制,進而實現無損網絡。市場上很多網絡設備廠商都有提供相應的產品。特點是兼容現有以太網,成本相對較低,交付部署相對復雜。
Spectrum是英偉達公司的RoCE網絡交換機,其產品線如下: