2024網(wǎng)絡(luò)級DMA技術(shù)需求白皮書_第1頁
2024網(wǎng)絡(luò)級DMA技術(shù)需求白皮書_第2頁
2024網(wǎng)絡(luò)級DMA技術(shù)需求白皮書_第3頁
2024網(wǎng)絡(luò)級DMA技術(shù)需求白皮書_第4頁
2024網(wǎng)絡(luò)級DMA技術(shù)需求白皮書_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

II網(wǎng)絡(luò)級DMA技術(shù)需求白皮書PAGE\*ROMANPAGE\*ROMANVI目錄一、高性能分布式系統(tǒng)承載大規(guī)模算力需求 1(一)全球算力高速增長 1(二)分布式系統(tǒng)承載大規(guī)模高復(fù)雜度算力任務(wù) 2(三)通信效率影響分布式系統(tǒng)性能 4二、分布式系統(tǒng)以多對多集合通信為主 4(一)什么是集合通信及其原語 5(二)分布式系統(tǒng)中集合通信的調(diào)用 6三、大規(guī)模集合通信面臨性能挑戰(zhàn) 6(一)集合通信實現(xiàn)現(xiàn)狀 7(二)高性能傳輸協(xié)議的發(fā)展及其挑戰(zhàn) 8(三)在網(wǎng)計算的發(fā)展及其挑戰(zhàn) 四、NDMA應(yīng)對大規(guī)模集合通信需求 14(一)NDMA概念 14(二)NDMA的基本模式和應(yīng)用價值 15網(wǎng)絡(luò)組播及典型應(yīng)用 15網(wǎng)絡(luò)聚播及典型應(yīng)用 16網(wǎng)絡(luò)任播及典型應(yīng)用 18(三)NDMA技術(shù)架構(gòu) 20整體框架 20關(guān)鍵技術(shù) 22(四)NDMA原型驗證 26OSUBenchmark驗證計算場景MPI_bcast任務(wù)完成時間 26SPDK驗證存儲場景IOPS(單位時間完成請求數(shù)量) 27五、總結(jié)和展望 28PAGEPAGE11網(wǎng)絡(luò)級DMA技術(shù)需求白皮書一、高性能分布式系統(tǒng)承載大規(guī)模算力需求(一)全球算力高速增長全球算力的高速增長是當(dāng)今數(shù)字時代的一個顯著特征。從最的單機(jī)計算到現(xiàn)在的云計算、分布式計算等技術(shù),全球算力已經(jīng)達(dá)到了驚人的規(guī)模。算力已不僅是一個技術(shù)維度的概念,更成為了一種全新的社會生產(chǎn)力,對整個經(jīng)濟(jì)社會發(fā)揮著越來越重要的作用。從1中看到,人均算力水平和國家GDP強(qiáng)相關(guān),是衡量一個國家一個地區(qū)發(fā)達(dá)程度的重要指標(biāo)。高算力國家,包括美國、新加坡等,人均算力都1000GFOLP以上我國人均算力在553GFLOPS,與發(fā)達(dá)國家仍定距。1:世界各國人均算力水平,來源于《泛在算力:智能社會的基石》未來,隨著全球智能化進(jìn)程的加速,人工智能、云計算、大數(shù)2030年,全球算力規(guī)模達(dá)56ZFlops65%,其3.3ZFlops,平均年增速達(dá)27%;智能算力達(dá)到52.5ZFlops,平均年增速超過80%;超算算力達(dá)到0.2ZFlops,平均年增速超多34%。(數(shù)據(jù)來源:《中國算力發(fā)展指數(shù)白皮書(2022年)》)(二)分布式系統(tǒng)承載大規(guī)模高復(fù)雜度算力任務(wù)算力需求的高速增長,使得算力任務(wù)的規(guī)模越來越大,復(fù)雜度越來越高。在年增長速度最快的人工智能領(lǐng)域,隨著ChatGPT的誕生,AI大模型再次受到業(yè)界的關(guān)注。AI大模型是指由大量參數(shù)組成的深度學(xué)習(xí)模型,通常包含數(shù)百萬到數(shù)十億個參數(shù)。這些模型可以通過大規(guī)模的數(shù)據(jù)訓(xùn)練,以實現(xiàn)各種復(fù)雜的任務(wù),如圖像識別、語音識別、自然語言處理等。AI大模型的規(guī)模逐年快速增長,如圖2所示。2018年GPT-1參數(shù)量為1.17億,2019年GPT-2參數(shù)量為15億,20201750億個參數(shù),而OpenAI最新發(fā)布的模型參數(shù)量大約100萬億個。AI大模型由于其復(fù)雜性和規(guī)模,需進(jìn)圖2:AI大模型演進(jìn),來源于\h超算算力年增長速度僅次于人工智能。超算系統(tǒng)通常由數(shù)以萬計的處理器核心組成,能夠在極短的時間內(nèi)完成大規(guī)模的科學(xué)計算、數(shù)據(jù)分析和模擬等任務(wù),廣泛應(yīng)用于科學(xué)研究、工程設(shè)計、天氣預(yù)報、金融分析等領(lǐng)域。圖3是世界最強(qiáng)超算算力TOP500給出的自1990年起超算算力的進(jìn)步趨勢,并進(jìn)行了線性回歸。圖中的三條線分別是上榜超算的總算力,榜單冠軍的算力以及榜單第500名超算的算力??梢钥吹?,超算算力幾乎按照摩爾定律在提升,從G級到現(xiàn)在的E級,未來還將向10E級演進(jìn)。圖3:TOP500性能發(fā)展,來源于\h不管是人工智能還是超算,其算力任務(wù)都呈現(xiàn)出規(guī)模擴(kuò)大、復(fù)雜度提升的趨勢,遠(yuǎn)超單個計算機(jī)或服務(wù)器的處理能力。因此,需要高性能分布式系統(tǒng),通過網(wǎng)絡(luò)連接提供海量計算、存儲資源,從而承載大規(guī)模算力任務(wù),突破單機(jī)算力和存儲的限制,提供高并發(fā)高可用的計算服務(wù),加快任務(wù)完成速度。(三)通信效率影響分布式系統(tǒng)性能系統(tǒng)的加速比體現(xiàn)了分布式系統(tǒng)的性能。根據(jù)阿姆達(dá)爾定律,可以計算出系統(tǒng)的加速比。阿姆達(dá)爾定律是一個計算機(jī)科學(xué)界的經(jīng)驗法則,它代表了處理器并行運算之后效率提升的能力,其計算公式表述如下。其中,S為系統(tǒng)加速比,p為并行度占比,s為并行節(jié)點數(shù)。增加并行節(jié)點數(shù),可以提升系統(tǒng)加速比,而當(dāng)s→∞時,并行度占比越大則系統(tǒng)加速比越高。S= 1 p1?p+s分布式系統(tǒng)中無法100%的并行處理完任務(wù)。4以簡化的形式展現(xiàn)了了計算任務(wù)執(zhí)行的基本過程。圖中,藍(lán)色部分是節(jié)點并行計算的過程,當(dāng)并行階段結(jié)束后,進(jìn)入串行通信的過程,即并行階段的輸出發(fā)送到其他節(jié)點作為下一并行階段的輸入,只有當(dāng)通信完成,各節(jié)點獲得相應(yīng)輸入后,才能將計算任務(wù)向前推進(jìn),一圖4:計算任務(wù)執(zhí)行過程二、分布式系統(tǒng)以多對多集合通信為主(一)什么是集合通信及其原語集合通信是一種通信方式,它將多個通信對象(如進(jìn)程、線程等)組合在一起,以實現(xiàn)一次調(diào)用實現(xiàn)向多個對象發(fā)送數(shù)據(jù),或從多個對象接收數(shù)據(jù)。集合通信常用于分布式系統(tǒng)并行計算中,協(xié)助參與同一任務(wù)的多個計算進(jìn)程完成數(shù)據(jù)交互。常見的集合通信可以進(jìn)一步抽象為廣播、散布、聚集等操作。其中,廣播操作將數(shù)據(jù)發(fā)送給所有通信對象;散布操作將數(shù)據(jù)分散給多個通信對象;聚集操作將多個通信對象的數(shù)據(jù)合并到一個對象中。集合通信通常以集合通信原語作為調(diào)用接口。MPI是常見的用于并行計算的通信框架,它定義了多種集合通信原語,AI場景中經(jīng)常使AllReduce就是一MPI通信原語,如5AllReduce操作后,原先各節(jié)點A、B、C、D的子集被進(jìn)行了聚合或歸一化,最終各節(jié)點均獲取A、B、C、D各集聚后的。圖5:AllReduce(二)分布式系統(tǒng)中集合通信的調(diào)用應(yīng)用通過調(diào)用集合通信,在進(jìn)程或線程間完成數(shù)據(jù)交互,從而向前推進(jìn)分布式系統(tǒng)任務(wù)。除了點對點的通信外,很大一部分的交互發(fā)生在點和1對、多1以對多情況。以超算系統(tǒng)為例,集合通信原語的調(diào)用統(tǒng)計如圖6所示(數(shù)據(jù)來源:CharacterizationofMPIUsageonaProductionSupercomputer,SudheerChunduri,ScottParker,PavanBalaji,KevinHarmsandKalyanKumaran,ArgonneNationalLaboratory),11的通信占比34%,而其余的66%為多多因此,提升多對多集合通信的傳輸效率對分布式系統(tǒng)性能的整體提升有著極其重要的作用。圖6:集合通信原語調(diào)用統(tǒng)計三、大規(guī)模集合通信面臨性能挑戰(zhàn)(一)集合通信實現(xiàn)現(xiàn)狀應(yīng)用調(diào)用集合通信原語后,網(wǎng)絡(luò)完成數(shù)據(jù)的傳輸,實現(xiàn)集合通信操作。應(yīng)用不感知網(wǎng)絡(luò)的動作行為,集合通信原語可以有多種實現(xiàn)方式。由于目前常用的傳輸層協(xié)議僅支持點到點傳輸,對于多對多的通信,通常都是在網(wǎng)絡(luò)上轉(zhuǎn)換成點到點通信,即應(yīng)用一次集合通信原語的調(diào)用由網(wǎng)絡(luò)多次的點對點傳輸轉(zhuǎn)發(fā)來完成。以組播為例,一種實現(xiàn)方式為單節(jié)點分別和多個目的節(jié)點通信,如圖7所示。這種方式可以應(yīng)用于AIParameterServer結(jié)果分發(fā),存儲系統(tǒng)多副本寫等。源節(jié)點將同一份消息依次發(fā)送給多個目的節(jié)點,實質(zhì)上是一種帶寬資源的浪費,易形成帶寬瓶頸鏈路。另一種為中間節(jié)點協(xié)助轉(zhuǎn)發(fā),可以用于在HPL計算中的鏈?zhǔn)浇M播,如圖8所示。這種方式雖然減少了帶寬瓶頸,但每個中間節(jié)點在進(jìn)行轉(zhuǎn)發(fā)時,都需要網(wǎng)絡(luò)層與應(yīng)用層交互,引入額外CPU處理帶來的延遲開銷。這兩種方式下,都會引入了與通信規(guī)模線性相關(guān)的額外開銷,且無法通過優(yōu)化下層網(wǎng)絡(luò)的延遲/吞吐性能來消除。圖8:組播實現(xiàn)方式一圖9:組播實現(xiàn)方式二為了提升集合通信的傳輸效率,業(yè)界不斷探索著新的優(yōu)化,主要的優(yōu)化方向包括傳輸協(xié)議的改進(jìn),和在網(wǎng)計算的發(fā)展。(二)高性能傳輸協(xié)議的發(fā)展及其挑戰(zhàn)傳輸協(xié)議的發(fā)展集中在端側(cè)創(chuàng)新,通過高性能端到端的傳輸來優(yōu)化點到點通信,中間網(wǎng)絡(luò)無感知。RDMA就是最具有代表性的高性能傳輸協(xié)議。RDMA(RemoteDirectMemoryAccess)允許在不經(jīng)過CPU的情況下,直接在主機(jī)內(nèi)存之間傳輸數(shù)據(jù)。傳統(tǒng)的網(wǎng)絡(luò)通信方式需要CPU參與數(shù)據(jù)傳輸?shù)拿恳粋€步驟,包括數(shù)據(jù)的拷貝、校驗和傳輸?shù)?,這些操作會占用大量的CPU資源,導(dǎo)致網(wǎng)絡(luò)傳輸速度變慢。而RDMA將數(shù)據(jù)從發(fā)送端的內(nèi)存直接傳輸?shù)浇邮斩说膬?nèi)存,通過0拷貝(不需要用戶空間和內(nèi)核空間中來回復(fù)制數(shù)據(jù))、內(nèi)核Bypass(數(shù)據(jù)流程繞過內(nèi)核),和CPU卸載(在CPU不參與通信的情況下對內(nèi)存進(jìn)行讀寫),極大的提高數(shù)據(jù)傳輸?shù)男屎徒档脱舆t。圖10:TCP與RDMA比較RDMA最主要的傳輸模式是RC(ReliableConnection),即可靠連接,是一種點到點的傳輸方式。如圖10所示,RDMARC模式下,收發(fā)兩端創(chuàng)建QP(QueuePair),并建立QP之間一對一的連接關(guān)系,之后在建立好的連接上順序發(fā)送消息,由PSN(PacketSequenceNumber)保證數(shù)據(jù)包的順序和完整性。圖11:RDMARC但這種模式存在擴(kuò)展性問題。由于每對通信進(jìn)程間都需要建立QP連接,若N個節(jié)點,每個節(jié)點P個進(jìn)程,所有進(jìn)Full-Mesh則立N*P*P個QPQP占,在通信過程中,QP的上下文在協(xié)議棧處理過程中也會被頻繁訪問修改。當(dāng)規(guī)模擴(kuò)QP狀態(tài)維護(hù)開銷增大,且網(wǎng)卡需要與主機(jī)內(nèi)存交互讀取相QP上下文,加劇傳輸性能下降。有測試表明,商用網(wǎng)卡在QP數(shù)量超過256時,吞吐即會出現(xiàn)明顯的下降,如圖12所示。12:RDMAWangZ,LuoL,NingQ,etal.SRNIC:ScalableArchitectureforRDMANICs[J].除了擴(kuò)展性問題,RDMARC模式還存在長尾延遲問題。同一QP內(nèi)的消息必須按照請求下發(fā)的順序依次按序傳輸。如果發(fā)送端先后下發(fā)了兩個傳輸請求,分別對應(yīng)1GB的消1KB的消息,1KB消息1GB消息傳輸完成后才能被傳輸,使得1KB消息1GB消息阻塞了。同時,因QP內(nèi)的數(shù)據(jù)必須在網(wǎng)絡(luò)上走相同的傳輸路徑,所以極易在網(wǎng)絡(luò)上產(chǎn)生流量不均,尤其擴(kuò)大,不同QP內(nèi),帶。RDMA還定義了另外兩種模式,分別UD(UnreliableDatagram)RD(ReliableDatagram),UD模式?jīng)]有可靠性保證,也不支持內(nèi)存直讀/寫,弱化了RDMA的性能優(yōu)勢;而RD模式差。因此,為RDMA規(guī)模擴(kuò)展性和傳輸長尾延遲的問題,業(yè)界衍生出了兩種傳輸連接優(yōu)化的技術(shù)路線,分別是連接復(fù)用和無連接。連接復(fù)用的主要實現(xiàn)方式有多種,包括共享接收隊列(SharedReceiveQueue,SRQ),即一個進(jìn)程共享同一個的接收隊列;擴(kuò)展可靠連接(ExtendedReliableConnection,XRC),即一個進(jìn)程對于相同目地服務(wù)器上的所有進(jìn)程共享同一個發(fā)送QP;動態(tài)連接傳輸(Dynamically-connectedtransport,DCT),即在初始化時,進(jìn)程之間并不預(yù)先建立連接,而是在運行過程中根據(jù)實際通信需求動態(tài)建立連接,通信完畢后再關(guān)閉連接。這些實現(xiàn)在不同程度上減少了需要維護(hù)的狀態(tài),但仍存在著擴(kuò)展性弱、建/拆鏈Overhead過高等問題。無連接的主要實現(xiàn)方式為,Datagram級可靠傳輸,應(yīng)用處理亂序重排及擁塞流控,每個節(jié)點狀態(tài)維護(hù)壓力與節(jié)點進(jìn)程數(shù)相關(guān)與節(jié)點數(shù)無關(guān),Google1RMASRD都屬于這類實現(xiàn)。無連接實現(xiàn)的出發(fā)點在于軟件的快速迭代,具有較好的靈活性,網(wǎng)卡擴(kuò)展性好,RDMA硬件卸載協(xié)議棧的優(yōu)勢,加,(三)在網(wǎng)計算的發(fā)展及其挑戰(zhàn)在網(wǎng)計算是一種通信加速技術(shù),體現(xiàn)了數(shù)據(jù)中心從“以計算為中心”到“以數(shù)據(jù)為中心”的架構(gòu)轉(zhuǎn)變。在網(wǎng)計算的核心理念在于,利用網(wǎng)絡(luò)在數(shù)據(jù)傳輸路徑上的優(yōu)勢位置,讓網(wǎng)絡(luò)卸載部分計算任務(wù),在數(shù)據(jù)搬移的過程中完成計算,從而提升通信效率,加速應(yīng)用。常見的在網(wǎng)計算場景包括在網(wǎng)聚合、在網(wǎng)緩存等,已初步展現(xiàn)了該技術(shù)的應(yīng)用價值。Nvidia的SHARP(ScalableHierarchicalAggregationProtocol)就是在網(wǎng)計算的一個商用方案。SHARP基于RDMA傳輸,讓RDMA連接在交換機(jī)上終結(jié),實現(xiàn)在網(wǎng)聚合與數(shù)據(jù)的組播分發(fā),如圖13所示。圖13:SHARP在網(wǎng)計算目前仍處于起步階段,對于在網(wǎng)計算的整體框架以及功能模塊還并沒有形成統(tǒng)一定義,業(yè)界仍在持續(xù)的探索和討論中。學(xué)術(shù)上,研究者們發(fā)表了大量在網(wǎng)計算方面的文章,其中不頂尖學(xué)術(shù)會議上的論文。比2021NSDI會議的最(AggregationTransmissionProtocol),同合的作,它面向分布式機(jī)器學(xué)習(xí)場景,定義了一套由主機(jī)和可編程交換機(jī)交成的有14完替代了TCP,對分布式訓(xùn)練的網(wǎng)絡(luò)傳輸進(jìn)行數(shù)據(jù)聚合優(yōu)化,在網(wǎng)絡(luò)中提供了盡力而為的聚合服務(wù)。再比2020OSDI會議Pegasus,它針對在分布式存儲系統(tǒng)中選擇性復(fù)制不能很好的應(yīng)對動態(tài)變化負(fù)載,且實現(xiàn)強(qiáng)一致性代價較大的問題UDP設(shè)計了主機(jī)和交換機(jī)之間新的傳輸協(xié)議,報文格式如圖15所示,實現(xiàn)交換機(jī)上的一致性目錄(in-networkcoherencedirectory),提升分布式存儲的負(fù)載均衡性能。圖14:ATP傳輸協(xié)議報文格式圖15:Pegasus傳輸協(xié)議報文格式不僅如此,在網(wǎng)計算也引起了標(biāo)準(zhǔn)組織的關(guān)注。IRTF(InternetResearchForce)IAB(InternetArchitectureBoard)授權(quán)對一些相對遠(yuǎn)期的網(wǎng)絡(luò)問題進(jìn)行研究的組織IETF(InternetEngineeringForce)關(guān)系緊密,并行工作。2020年正式成COIN(ComputingintheNetwork)研究組。該工作組將針對應(yīng)用場景、功能架構(gòu)、新傳輸機(jī)制等展開研究,目前仍處于應(yīng)用場的還整體成。可以看到,在網(wǎng)計算正在成為未來提升系統(tǒng)性能重要的技術(shù)方向。然而在當(dāng)前的發(fā)展中,在網(wǎng)計算的設(shè)計呈現(xiàn)出碎片化的狀態(tài),難以形成標(biāo)準(zhǔn),其中一個很主要的原因就是統(tǒng)一傳輸框架的缺失。由于在網(wǎng)計算常常涉及到多對多的通信場景,而當(dāng)前的網(wǎng)絡(luò)傳輸集中于點到點的方式,缺乏面向多對多通信的原生設(shè)計,這就使得開發(fā)出了各種私有傳輸協(xié)議來支持,帶來生態(tài)發(fā)展的局限,阻礙在網(wǎng)計算技術(shù)的廣泛應(yīng)用。四、NDMA應(yīng)對大規(guī)模集合通信需求(一)NDMA概念NDMA的全稱是NetworkDMA,它是網(wǎng)絡(luò)中一組節(jié)點的直接內(nèi)存訪問技術(shù)。直接內(nèi)存DMA是計算系統(tǒng)中常見的技術(shù),它允許外部設(shè)備直接訪問內(nèi)存中的數(shù)據(jù),而無需經(jīng)過CPU的處理。DMA應(yīng)用于單個節(jié)點內(nèi)了單個節(jié)點內(nèi)數(shù)據(jù)傳輸效率?;贒MA的理念,發(fā)展出了遠(yuǎn)程直接內(nèi)存RDMA。RDMA允許遠(yuǎn)程服務(wù)器或主機(jī)直接訪問本地內(nèi)存,而無需經(jīng)過本CPU的干預(yù),極大降低了端到端的傳輸時延。RDMA側(cè)重于在兩個節(jié)點之間完成點到點的數(shù)據(jù)傳輸訪問。NDMA是對現(xiàn)有遠(yuǎn)程直接內(nèi)存訪問技術(shù)的增強(qiáng),著重面向網(wǎng)絡(luò)中的一組節(jié)點進(jìn)行內(nèi)存直讀、直寫操作,最優(yōu)進(jìn)升NDMA旨在將集合通信多對多操作的邏輯從應(yīng)用層面下沉到網(wǎng)絡(luò),實現(xiàn)集合通信“一棧直達(dá)”,即應(yīng)用對集合通信原語的一次調(diào)用,僅對應(yīng)著網(wǎng)絡(luò)的一次傳輸轉(zhuǎn)發(fā)行為,不存在中間節(jié)點額外處理。仍以集合通信中的組播為例。在NDMA的方式下,組播源節(jié)點在網(wǎng)絡(luò)層面上只需要發(fā)送一次數(shù)據(jù),由網(wǎng)絡(luò)上的交換機(jī)節(jié)點進(jìn)行復(fù)制轉(zhuǎn)發(fā),將數(shù)據(jù)報文發(fā)送到多個組播組節(jié)點,并完成數(shù)據(jù)在組播組節(jié)點中的內(nèi)存直接訪問操作。整個過程中,數(shù)據(jù)報文只經(jīng)過一次Tx+Rx協(xié)議棧,無額外CPU開銷。圖16:NDMA實現(xiàn)“一棧直達(dá)”(二)NDMA的基本模式和應(yīng)用價值NDMA使用統(tǒng)一的框架支持網(wǎng)絡(luò)組播、聚播和任播三種基本模式,對高性能計算存儲場景有著明顯的系統(tǒng)性能提升。網(wǎng)絡(luò)組播及典型應(yīng)用組播是一種1對多的傳輸,是分布式計算系統(tǒng)中最常使用的通信模式之一。在超算系統(tǒng)Mira中,MPI_bcast原語的執(zhí)行時間占MPI通信總時間的14%,時間占比在MPI集合通信原語中僅次于MPI_AllReduce。HPC500榜單排名測試HPL,其通信以組播模HPL中,每一輪計算循環(huán)中3部分通信。其中,第2部分“Panel廣播”即一列計算進(jìn)程分別把將數(shù)據(jù)組播給同一行的其他進(jìn)程,第3部分“行交換”過程包含一行計算進(jìn)程分布把數(shù)據(jù)組播給同一列的其他進(jìn)程,如圖所示。圖17:HPL通信模式NDMA的組播模式利用交換機(jī)完成組播報文的復(fù)制分發(fā),以網(wǎng)絡(luò)層組播替代應(yīng)用層組播,避免了相同數(shù)據(jù)的重復(fù)發(fā)送,使得組播任務(wù)完成時間逼近理論最優(yōu)值(即數(shù)據(jù)量與帶寬之比),在大規(guī)模下相比于應(yīng)用層組播任務(wù)完成時間有顯著減少,從而降HPL過程升HPL率。圖18:組播優(yōu)化型應(yīng)用聚播是一種多對1的傳輸,在AI計算、大數(shù)據(jù)應(yīng)用中存在大量此種類型的操作。AI計算中使用基于參數(shù)服務(wù)器(ParameterServerPS)的數(shù)據(jù)并行方法解決訓(xùn)練數(shù)據(jù)規(guī)模過大導(dǎo)致的訓(xùn)練時間過長的問題。如圖18所示,PS訓(xùn)練方法將訓(xùn)練數(shù)據(jù)集分割成多batch放置在不同的worker多個worker同時訓(xùn)練同一個AI訓(xùn)練成,多worker將訓(xùn)練好的數(shù)據(jù)(模型參數(shù)或者梯度)發(fā)送PS進(jìn)行合并更新,PS將更新后的數(shù)據(jù)下worker,開啟新一輪的訓(xùn)練。訓(xùn)練循環(huán)往復(fù),直至模型收斂。在此worker都送數(shù)據(jù)到PS行,導(dǎo)致PS。圖19:AIPS訓(xùn)練在大數(shù)據(jù)應(yīng)用中,MapReduce是典型的一種計算框架。如19所示,Map并行執(zhí)行,其輸出結(jié)果Reduce的輸入Reduceworker完成規(guī)約化簡操作。并map任reduce任務(wù)的輸入流量,mapreduce之間形成多組多對一的通信關(guān)系,使得交換機(jī)承受多個多對一流量,出端口緩存壓力增大,影響并行計圖20:MapReduce通信采用聚播技術(shù),數(shù)據(jù)在經(jīng)過交換設(shè)備時,會先進(jìn)行聚合,再轉(zhuǎn)發(fā)聚合結(jié)果,緩解了瓶頸點的帶寬和緩存壓力,有效避免因網(wǎng)絡(luò)性能下降帶來的任務(wù)通信代價增加,并縮短任務(wù)完成時間。圖21:聚播優(yōu)化型應(yīng)用任播是一11的操作,但其特殊點在于接收端是一組節(jié)點中的一個,發(fā)送端可以選擇其中任意一個發(fā)送數(shù)據(jù),任意一個接收到數(shù)據(jù)的接收端都可以完成數(shù)據(jù)處理。企業(yè)存儲系統(tǒng)是一個典型的應(yīng)用場景。在該場景下,存儲系統(tǒng)一般由兩張網(wǎng)絡(luò)構(gòu)成,前端業(yè)務(wù)網(wǎng)絡(luò)和后端存儲網(wǎng)絡(luò),如22所示。前端業(yè)務(wù)網(wǎng)絡(luò)中,通常由存儲陣的制器讀等IO命令或者控制命令請求??刂破魍瓿烧埱筇幚砗?,根據(jù)一定的負(fù)載均衡,經(jīng)端,對的取。圖22:企業(yè)存儲系統(tǒng)架構(gòu)前端客戶網(wǎng)絡(luò)和后端存儲網(wǎng)絡(luò)相對解耦,客戶端通常會發(fā)請求。而控制器由于負(fù)載分擔(dān)以及數(shù)據(jù)打散的需求,會有很大概率將請求轉(zhuǎn)發(fā)至歸屬節(jié)點進(jìn)行處理,從而引入有損分布式系統(tǒng)性能的水平時延23所示。單節(jié)點系統(tǒng)性能取決于“垂直時延”,即I/O流程所花費時延,包括主機(jī)下發(fā)請求、協(xié)議棧處理、全局cache、存儲持久化等。而擴(kuò)展到分布式系統(tǒng)后,由于需查找存儲節(jié)點歸屬,系統(tǒng)性能還受限于“水平時延”,即控間交互流程所花費時延,包括歸屬查找、I/O請求轉(zhuǎn)發(fā)、跨引擎數(shù)據(jù)搬移等。水平時延的引入會導(dǎo)致客戶端請求的額外轉(zhuǎn)發(fā),處理時延加劇,系統(tǒng)整體的IOPS低。圖23:企業(yè)存儲系統(tǒng)“水平時延”問題任播技術(shù)可以通過網(wǎng)絡(luò)交換機(jī)隨路地進(jìn)行負(fù)載分擔(dān)邏輯從而避免占用陣列側(cè)控制器過多CPU資源和控間轉(zhuǎn)發(fā)帶來的帶寬與損,提系統(tǒng)體的IOPS,如24圖24:任播優(yōu)化(三)NDMA技術(shù)架構(gòu)整體框架NDMA是一個由網(wǎng)絡(luò)端側(cè)節(jié)點和網(wǎng)絡(luò)轉(zhuǎn)發(fā)節(jié)點相互協(xié)同,共同構(gòu)成的統(tǒng)一傳輸框架,提供對集合通信的原生支持。該框架支持三種基本模式的遠(yuǎn)端直接內(nèi)存訪問,分別是組播、聚播和任播,能夠應(yīng)用于大規(guī)模通信場景,且不綁定特定的網(wǎng)絡(luò)層協(xié)議,具有更強(qiáng)的靈活性和開放性。從協(xié)議棧層次劃分來看,NDMA框架包含對網(wǎng)絡(luò)層、傳輸層和業(yè)務(wù)層的能力要求。網(wǎng)絡(luò)層支持調(diào)用多對多轉(zhuǎn)發(fā)能力(組播/任播/聚播),不局限于以太體系。NDMA使IP網(wǎng)絡(luò)層IP網(wǎng)絡(luò)層自身已具備組播播NDMA可在基礎(chǔ)對11,1多和1的可靠通信,息間,。業(yè)務(wù)層支持NDMA的集合原語新實現(xiàn),降低集合通信完成25IP網(wǎng)絡(luò)NDMA為例RoCEv2體系對比,展示了NDMA協(xié)棧層圖25:NDMA協(xié)議位置從組件構(gòu)成來看,NDMA框架中包括網(wǎng)絡(luò)轉(zhuǎn)發(fā)設(shè)備(如交換機(jī))網(wǎng)絡(luò)端側(cè)設(shè)備(如服務(wù)器側(cè)網(wǎng)卡/CPU)和通信應(yīng)用軟件(如MPI/UCX)件主要能如26圖26:NDMA組件功能網(wǎng)絡(luò)轉(zhuǎn)發(fā)設(shè)備負(fù)責(zé)建立轉(zhuǎn)發(fā)路由表并按路由表進(jìn)行多對多轉(zhuǎn)發(fā)。轉(zhuǎn)發(fā)路由表具有一定的業(yè)務(wù)邏輯,如在存儲任播場景下,轉(zhuǎn)發(fā)設(shè)備感知后端存儲系統(tǒng)的從屬關(guān)系,從而建立相應(yīng)的轉(zhuǎn)發(fā)表。轉(zhuǎn)發(fā)設(shè)備能夠識別端測報文所屬類型,如組播、聚播、任播,根據(jù)報文類型查找正確的轉(zhuǎn)發(fā)路由表實現(xiàn)報文轉(zhuǎn)發(fā)。網(wǎng)絡(luò)端側(cè)設(shè)備負(fù)責(zé)建立和維護(hù)面向集合通信的傳輸連接。新的傳輸連接匹配多對多通信范式,與轉(zhuǎn)發(fā)設(shè)備協(xié)同配合,根據(jù)應(yīng)用需求構(gòu)建傳輸通信組,通信組內(nèi)靈活支持三種基本模式的連接關(guān)系,并保證傳輸?shù)目煽啃?。通信?yīng)用軟件具NDMA類型接口的能力。集合通信操作的輸入輸出不發(fā)生改變,應(yīng)用對集合通信原語的調(diào)用邏輯無變化,但原語的實現(xiàn)需要新增面向NDMA多對多傳輸連接所對應(yīng)的動作和參數(shù)。關(guān)鍵技術(shù)如何設(shè)計多對多的可靠傳輸連接是實現(xiàn)NDMA的基礎(chǔ)和關(guān)鍵。組從連接方式來看RoCEv2(RDMARC)為代表的進(jìn)程級連接SRD為代表的無連接,是兩個極端方向的連接機(jī)制設(shè)計。進(jìn)程級連接實現(xiàn)復(fù)雜度低,易于硬件卸載,利用硬件卸載協(xié)議棧極大降低了端到端傳輸時延。然而,進(jìn)程級連接兩端固定,連接數(shù)量多,規(guī)模擴(kuò)展受限。這種方式效率高但資源壓力大。與之相反的無連接方式,將亂序重排、擁塞控制等和功能CPU,網(wǎng)卡負(fù)擔(dān)減輕,使得擴(kuò)展性得到極大提升,但是回退到了軟件處理方式,時延無靈活強(qiáng)但率低。這兩種方式的連接都無法滿足大規(guī)模分布式應(yīng)用的需求。NDMA根據(jù)應(yīng)用任務(wù)的特征,引入“通信組”概念。所謂通信組,指的是參與一個分布式任務(wù)的多個有相互通信需求的進(jìn)程。NDMA基于通信組建立了介于進(jìn)程級連接和無連接之間新的連接方式,即組級的連接共享。組級連接相對于進(jìn)程級連接,極大程度降低了連接數(shù)。在N個節(jié)點,每節(jié)點P個進(jìn)程的場景下,進(jìn)程級連接的數(shù)量級為O(N*P*P),而組級連接的數(shù)量級僅為O(1),如圖27所示。并且,通信組的劃分與應(yīng)用任務(wù)相對應(yīng),任務(wù)確定后,通信組級的連接則具有一定的穩(wěn)定性,不會頻繁動態(tài)更新而引入大量開銷。圖27:組級連接示例機(jī)制可靠性包含三個層面的含義,分別是數(shù)據(jù)完整性,數(shù)據(jù)還原性和數(shù)據(jù)正確性。數(shù)據(jù)完整性指的是數(shù)據(jù)無丟失,丟包情況下需要重傳。發(fā)送端根據(jù)報文應(yīng)答消息來檢測是否丟包。發(fā)送端設(shè)置定時器,在定時器內(nèi),到應(yīng)息ACK,為否則,發(fā)送端認(rèn)為報文丟失,需要重傳,這其中包括顯式收到接收端發(fā)送過來的丟包指示消NACK,也包括在定時器時間內(nèi)未收接收任何答消的方分為Go-back-N選擇傳。RoCEv2RDMA的重傳機(jī)制使Go-Back-N,即重傳丟失的數(shù)據(jù)N之后的所有數(shù)據(jù)報文。相比Go-back-N這種低效的重傳方式,選擇重傳只需要重傳丟失的單個數(shù)據(jù)報文,因此丟包帶來的負(fù)面,SRD用重數(shù)據(jù)還原性指的是數(shù)據(jù)發(fā)出的順序和數(shù)據(jù)接收的順序一致,最終傳到用戶層的數(shù)據(jù)不能亂序。最常見的保序方式是讓同一個流(flow)在網(wǎng)絡(luò)上走相同的路徑,源和目的相同的流量被認(rèn)為是同一個流,網(wǎng)絡(luò)轉(zhuǎn)發(fā)設(shè)備對同一個流執(zhí)行同樣的轉(zhuǎn)發(fā)規(guī)則,保證選擇相行轉(zhuǎn);另種方式是將一個flow切若干個flowlet,flowlet的粒度在網(wǎng)絡(luò)上發(fā)送,flowlet內(nèi)同一路徑順序轉(zhuǎn)發(fā),flowlet多個再側(cè)。數(shù)據(jù)正確性通過數(shù)據(jù)校驗來保證。NDMA的可靠性機(jī)制遵循上述三個層面的含義,通過網(wǎng)絡(luò)轉(zhuǎn)發(fā)設(shè)備和網(wǎng)絡(luò)端側(cè)設(shè)備協(xié)同完成。在數(shù)據(jù)完整性上,接收端通過報文應(yīng)答消息ACK/NACK指示報文的接收狀態(tài),網(wǎng)絡(luò)設(shè)備則需要根據(jù)多對多通信的不同特征,對接收端發(fā)送的報文應(yīng)答消息進(jìn)行預(yù)處理,如組播模式下,聚合組播接收端發(fā)送回來的報文應(yīng)答消息;聚播模式下,復(fù)制轉(zhuǎn)發(fā)接收端發(fā)送的報文應(yīng)答消息,從而滿足不同多對多操作的要求。在丟包時,發(fā)送端可以選擇Go-back-N或選擇重傳。在數(shù)據(jù)還原性上,根據(jù)應(yīng)用特征劃分保序粒度,基于該粒度的流量內(nèi)由網(wǎng)絡(luò)轉(zhuǎn)發(fā)保證收發(fā)順序的一致性,不需要端側(cè)應(yīng)用進(jìn)行

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論