亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        AI服務(wù)器PCIe拓撲應(yīng)用研究*

        2022-12-22 11:32:48林楷智宗艷艷孫瓏玲
        計算機工程與科學(xué) 2022年3期
        關(guān)鍵詞:深度模型

        林楷智,宗艷艷,孫瓏玲

        (1.高效能服務(wù)器和存儲技術(shù)國家重點實驗室,北京 100085;2.浪潮(北京)電子信息產(chǎn)業(yè)股份有限公司,北京 100085)

        1 引言

        為滿足大數(shù)據(jù)、云計算和人工智能等領(lǐng)域的數(shù)據(jù)收集與處理需求,采用各種異構(gòu)形式的AI服務(wù)器得到了廣泛應(yīng)用。CPU+GPU是AI服務(wù)器中普遍使用的計算單元組合[1]。其中,P2P(Peer to Peer)通信用于多GPU系統(tǒng)中,借助緩存設(shè)備,可以有效利用PCIe資源進行GPU之間的數(shù)據(jù)交互[2]。

        針對GPU加速應(yīng)用,業(yè)內(nèi)已有面向多種軟件工具、硬件配置和算法優(yōu)化的研究。2016年,Shi等人[3]通過性能基準測試,比較了GPU加速深度學(xué)習的軟件工具(Caffe、CNTK、TensorFlow和Torch等);2018年,Xu等人[4]通過對軟件和硬件配置的組合研究,得到不同開源深度學(xué)習框架的應(yīng)用特性和功能,進一步量化了硬件屬性對深度學(xué)習工作負載的影響;2019年,F(xiàn)arshchi等人[5]使用FireSim將開源深度神經(jīng)網(wǎng)絡(luò)加速器NVDLA(NVIDIA Deep Learning Accelerator)集成到Amazon Cloud FPGA上的RISC-V SoC中,通過運行YOLOv3目標檢測算法來評估NVDLA的性能。但是,基于CPU+GPU架構(gòu),針對AI服務(wù)器在各應(yīng)用場景中的分析卻鮮有研究。

        本文主要對AI服務(wù)器中3種典型的PCIe拓撲Balance Mode、Common Mode和Cascade Mode的應(yīng)用場景進行研究,旨在通過對3種拓撲的點對點帶寬與延遲、雙精度浮點運算性能和深度學(xué)習推理性能分析,得到3種拓撲在各應(yīng)用場景中的優(yōu)勢和劣勢,為AI服務(wù)器的實際應(yīng)用提供優(yōu)選配置指導(dǎo)。

        2 典型拓撲結(jié)構(gòu)

        2.1 3種基礎(chǔ)拓撲結(jié)構(gòu)

        (1)Balance Mode。

        Balance Mode拓撲為Dual root,根據(jù)PCIe資源將GPU平均分配到各個CPU,同一個PCIe Switch下的GPU可以實現(xiàn)P2P通信,不同CPU下掛接的GPU需要跨超級通道互聯(lián)UPI(Ultra Path Interconnect)才能通信。以8個GPU卡為例,Balance Mode拓撲結(jié)構(gòu)如圖1所示。

        Figure 1 PCIe card GPU Balance mode

        (2)Common Mode。

        Common Mode拓撲中GPU的PCIe資源均來自同一個CPU,同一個PCIe Switch下的GPU可以實現(xiàn)P2P通信,不同PCIe Switch下掛接的GPU需要跨CPU PCIe Root Port才能實現(xiàn)P2P通信,但通信帶寬低于同一個PCIe Switch下的P2P通信。以8個GPU卡為例,Common Mode拓撲結(jié)構(gòu)如圖2所示。

        Figure 2 PCIe card GPU Common mode

        (3)Cascade Mode。

        Cascade Mode拓撲中GPU的PCIe資源均來自同一個CPU PCIe Root Port,PCIe Switch之間為級聯(lián)拓撲,同一級PCIe Switch下的GPU可以實現(xiàn)P2P通信,第1級PCIe Switch下的GPU和第2級PCIe Switch下的GPU之間可以實現(xiàn)P2P通信,不需要通過CPU PCIe Root Port。以8個GPU卡為例,Cascade Mode拓撲結(jié)構(gòu)如圖3所示。

        Figure 3 PCIe card GPU Cascade mode

        2.2 拓撲特性分析

        Balance Mode的配置將GPU平均掛接在2個CPU下,GPU PCIe總的上行帶寬較高;Common Mode在一定程度上能夠滿足GPU之間點對點的通信,同時可保障足夠的CPU與GPU之間的I/O帶寬;Cascade Mode只有一條×16鏈路,但由于GPU之間通過PCIe Switch串接,提升了點對點的性能,降低了延遲。

        對于雙精度浮點運算,因GPU計算需要使用處理器與主內(nèi)存,由于Dual root的拓撲上行帶寬與內(nèi)存使用率提升,其性能會優(yōu)于Single root的拓撲。

        對于深度學(xué)習推理性能來說,具備并行計算能力的 GPU 可以基于訓(xùn)練過的網(wǎng)絡(luò)進行數(shù)十億次的計算,從而快速識別出已知的模式或目標。不同拓撲下GPU的互聯(lián)關(guān)系不同,GPU之間的溝通會影響深度學(xué)習推理的整體性能。

        3 實驗及結(jié)果分析

        3.1 實驗裝置

        為探究在不同應(yīng)用條件下3種拓撲的性能差異,實驗使用自研AI服務(wù)器(NF5468M5)搭建機臺進行測試。裝置使用2顆CPU,規(guī)格為Intel? Xeon? Gold 6142,主頻為2.60 GHz;使用12條 DDR4內(nèi)存,容量為32 GB,主頻為2 666 MHz;使用8顆GPU,規(guī)格為NVIDIA Tesla-V100_32G。

        3.2 實驗結(jié)果分析

        3.2.1 點對點帶寬與延遲

        對于GPU的P2P性能,可以使用帶寬與延遲來衡量。PCIe 3.0的帶寬為16 GB/s,理想狀況下,實際應(yīng)用中帶寬可以達到理論帶寬的80%左右。PCIe的延遲主要取決于PCIe Trace的長度、走線路徑上的器件及是否經(jīng)過UPI、是否跨RC(Root Complex)等。

        如圖4所示,在Balance Mode、Cascade Mode和Common Mode 3種拓撲中,分別測試掛在同一個PCIe Switch下的GPU(如圖4中線路①)和跨PCIe Switch的GPU(如圖4中線路②)的點對點帶寬與延遲。測試結(jié)果如表1、表2及圖5所示。

        Figure 4 Schematic of point-to-point bandwidth and latency

        在同一個PCIe Switch下,由于GPU之間的傳輸距離是一樣的,所以在點對點回路①中,3種拓撲的帶寬與延遲結(jié)果皆相近;對于跨PCIe Switch的2顆GPU,由于CPU間為3 UPI Links,其信號傳輸速度足夠快,所以Balance Mode與Common Mode的結(jié)果相近,而對于Cascade Mode,由于GPU之間的溝通只需經(jīng)過PCIe Switch,傳輸路徑變短,其點對點延遲性能得以提升;同時,對于Intel CPU而言,一個PCIe ×16 Port 為一個RC,不同RC 之間的通信帶寬比同一個RC下PCIe Switch之間的通信差,故Cascade Mode的帶寬也得以提升。

        Table 1 GPU point-to-point bandwidth and latency on the same PCIe switch

        Table 2 GPU point-to-point bandwidth and latency across PCIe switch

        Figure 5 GPU point-to-point bandwidth and latency across PCIe Switchs

        3.2.2 HPL性能分析

        HPL(High Performance Linpack)測試可以表征3種拓撲在雙精度浮點運算中的表現(xiàn)。Balance Mode、Common Mode和Cascade Mode 3種拓撲的HPL性能測試結(jié)果如表3所示。

        Table 3 HPL performance of three topologies

        為清晰表征3種拓撲在HPL性能測試中的表現(xiàn)差異,以Balance Mode的測試分數(shù)為基準,得到Common Mode和Cascade Mode 2種拓撲HPL性能測試分數(shù)對Balance Mode分數(shù)的占比,如圖6所示。

        Figure 6 HPL performance of three topologies

        HPL測試需要使用處理器與主內(nèi)存,由于Dual root的拓撲上行帶寬和內(nèi)存使用率提升,性能將會優(yōu)于Single root的拓撲,故Balance Mode和Common Mode在HPL測試中的分數(shù)會高于Cascade Mode的。另外,Balance Mode結(jié)構(gòu)將8個GPU平均掛載在2顆CPU下,可以利用2顆CPU及內(nèi)存的資源來完成浮點運算;在Common Mode中,雖然所有GPU都掛載于CPU0下,但因CPU間的UPI連接速度夠快,CPU間的單條UPI連接速度高達10.4 GT/s,同時運行8個GPU的浮點運算時,可以通過UPI來與CPU1通信,且共享內(nèi)存。故整體而言,Balance Mode的HPL性能會略高于Common Mode的。

        3.2.3 深度學(xué)習性能分析

        深度學(xué)習DL(Deep Learning)通過多個處理層構(gòu)成的計算模型進行圖像、視頻和音頻等的處理和識別[6],常用模型有自動編碼機、受限玻爾茲曼機、深度神經(jīng)網(wǎng)絡(luò)、卷積神經(jīng)網(wǎng)絡(luò)和循環(huán)神經(jīng)網(wǎng)絡(luò)等,其中卷積神經(jīng)網(wǎng)絡(luò)[7]在圖像處理方面應(yīng)用較為廣泛,如圖7所示。

        Figure 7 Image processing using convolutional neural network

        在2017年的GPU技術(shù)大會(GTC)上,NVIDIA發(fā)布了基于volta的V100 GPU。V100 GPU是第1個包含“張量核心”的NVIDIA GPU,這是4×4矩陣乘法操作設(shè)計的核心,是深度學(xué)習模型的主要部分[8]。

        深度學(xué)習訓(xùn)練模型主要使用2種分布策略——數(shù)據(jù)并行型和模型并行型[9],本文實驗采用數(shù)據(jù)并行型策略。對于數(shù)據(jù)并行,每個GPU都有一個深度學(xué)習模型的完整副本。每個GPU接收數(shù)據(jù)的不同部分進行訓(xùn)練,然后將其參數(shù)通過Ring All-Reduce的方式更新到所有GPU,以便與所有GPU共享其訓(xùn)練輸出。如圖8所示,以Balance Mode為例,在運行數(shù)據(jù)并行的深度學(xué)習訓(xùn)練模型時,當多臺機器運行時,GPU的通信流通過IB(InfiniBand)卡實現(xiàn)機器之間的信息傳遞;當單臺機器運行時,基于NCCL(NVIDIA Collective Communications Library)通信庫,8個GPU卡的信息傳遞構(gòu)成環(huán)形通信流。與GPU之間的通信帶寬相比,減小的CPU和GPU之間的通信帶寬會影響GPU獲取數(shù)據(jù)集所需要的時間,即完成一個Batch size所需的時間。

        Figure 8 Data parallel communication mode for Balance mode

        深度學(xué)習訓(xùn)練模型種類繁多,不同模型有不同的優(yōu)勢,可以應(yīng)用于各類實際應(yīng)用場景。如圖9所示,ResNet計算模型借鑒了Highway Network思想,利用殘差網(wǎng)絡(luò)構(gòu)建,其優(yōu)化的目標為輸出和輸入的差F(x)=H(x)-x。ResNet的計算深度為152層神經(jīng)網(wǎng)絡(luò),Top5錯誤率可達3.57%,解決了層次比較深時無法訓(xùn)練的問題。VGG計算模型分為VGG16和VGG19,計算深度為16和19層神經(jīng)網(wǎng)絡(luò),在目標檢測與識別方面有突出的性能優(yōu)勢,Top5錯誤率達7.3%[10]。

        Figure 9 ResNet model

        深度學(xué)習模型場景有圖像、視頻和語音處理及推薦等,不同應(yīng)用場景的數(shù)據(jù)集類型不同。以圖像處理為例,針對參數(shù)規(guī)模不同的模型,AI服務(wù)器不同PCIe 拓撲的性能表現(xiàn)也會有不同,常見的計算量及容量較小的模型有ResNet50(99 MB)[11]、InceptionV3(92 MB)等,計算量及容量較大的模型有VGG16(528 MB)、VGG19(549 MB)[12]等。以計算量及容量較小的模型ResNet50和計算量及容量較大的模型VGG16為例,通過不同拓撲結(jié)構(gòu)對圖像集訓(xùn)練速度的測試,可以得到3種拓撲在2類深度學(xué)習訓(xùn)練模型中的適用性,結(jié)果如表4和圖10所示。

        Table 4 Performance of three topologies under different deep learning models

        Figure 10 Performance of three topologies under different deep learning models

        對于計算量及容量較小的模型,模型重復(fù)讀取數(shù)據(jù)集的次數(shù)變多,對處理器、硬盤存取和GPU間資料交換有較高的需求,所以同一顆CPU下使用2條PCIe ×16帶寬的Common Mode的性能表現(xiàn)(如ResNet50為5 624.23 images/s)會優(yōu)于另外2種拓撲;對于計算量及容量較大的模型,在數(shù)據(jù)并行的模式下運行深度學(xué)習訓(xùn)練時,系統(tǒng)內(nèi)的每個GPU需在接收到同樣的參數(shù)后,再開始執(zhí)行訓(xùn)練,因為Cascade Mode的GPU點對點性能較好,其搬移模型參數(shù)至各GPU的速度會較快,所以性能(如VGG16為2 658.47 images/s)會優(yōu)于另外2種拓撲。

        4 AI服務(wù)器中的GPU PCIe拓撲切換設(shè)計

        針對不同的深度學(xué)習訓(xùn)練模型,結(jié)合實際應(yīng)用場景,往往需要在同一臺服務(wù)器中切換不同的GPU PCIe拓撲,來實現(xiàn)性能最優(yōu)化。手動更改線纜連接方式需要開箱操作,用戶體驗不友好,還有可能導(dǎo)致維護人員手指劃破等工傷事件。

        有如下2種方案可以實現(xiàn)BMC(Baseboard Management Controller)遠程一鍵拓撲切換。

        (1)基于PCIe Switch FW技術(shù)的GPU拓撲遠程一鍵切換

        如圖11所示,PCIe Switch 0 的Port 0始終為上行端口,Port 1始終為下行端口;PCIe Switch 1的Port 0始終為上行端口,Port 1始終為上行端口。拓撲的切換通過配置PCIe Switch 1的FW或發(fā)送PCIe Switch 1的配置命令實現(xiàn)。

        Figure 11 GPU topology remote switch based on PCIe Switch FW technology

        若切換為Balance Mode,則BMC配置PCIe Switch 1的FW或發(fā)送PCIe Switch 1的配置命令,將PCIe Switch 1下對應(yīng)的GPU4~GPU7分配到PCIe Switch 1的Port 0;若切換為Cascade Mode,則BMC配置PCIe Switch 1的FW或發(fā)送PCIe Switch 1的配置命令,將PCIe Switch 1下對應(yīng)的GPU4~GPU7分配到PCIe Switch 1的Port 1。

        (2)基于PCIe 4.0 MUX的GPU拓撲遠程一鍵切換。

        如圖12所示,PCIe Switch 0 的Port 0始終為上行端口,Port 1始終為下行端口;PCIe Switch 1的Port 0始終為上行端口。拓撲的切換通過BMC控制PCIe MUX實現(xiàn)。

        若切換為Balance Mode,則BMC通過配置PCIe 4.0 MUX,使PCIe Switch 0 Port 1切到NIC0,CPU1切到PCIe Switch 1的Port 0;若切換為Cascade Mode,則BMC通過配置PCIe 4.0 MUX,使PCIe Switch 0的Port 1切到PCIe Switch 1的Port 0。

        Figure 12 GPU topology remote switch based on PCIe 4.0 MUX

        5 結(jié)束語

        針對AI服務(wù)器的3種PCIe拓撲結(jié)構(gòu)——Balance Mode、Common Mode和Cascade Mode,本文進行了點對點帶寬與延遲、HPL性能的測試和數(shù)據(jù)分析,并選取典型深度學(xué)習模型進行拓撲結(jié)構(gòu)的應(yīng)用場景分析。

        在點對點帶寬與延遲方面,因Cascade Mode中GPU只需經(jīng)過PCIe Switch且GPU掛載在同一個RC下,故Cascade Mode的點對點帶寬與延遲均為3種拓撲中最優(yōu)的;在HPL性能方面,由于Dual root的上行帶寬和內(nèi)存使用率提升且Balance Mode中GPU均勻使用2顆CPU和內(nèi)存的資源,故Balance Mode的HPL性能最優(yōu);在深度學(xué)習典型應(yīng)用方面,Cascade Mode因具備較好的點對點性能而更擅長計算量及容量較大的模型數(shù)據(jù)處理,Common Mode因使用同一顆CPU的2條PCIe ×16帶寬而更擅長計算量及容量較小的模型的數(shù)據(jù)處理。

        針對密集度更高的超大規(guī)模的數(shù)據(jù)集群,NVDIA發(fā)布了基于NVLink的GPU,GPU間NVLink每條通道的單向理論帶寬為25 Gb/s,每個端口的雙向理論帶寬可達50 GB/s。相對于利用PCIe協(xié)議的成本較低的GPU,NVLink將GPU的卡間通信和CPU分離,使計算單元兼具Balance Mode的高帶寬和Cascade Mode的卡間高通信能力。

        在智能計算領(lǐng)域,復(fù)雜多變的應(yīng)用場景對計算架構(gòu)的選擇和設(shè)計提出了更高的需求。在滿足實際應(yīng)用需求的條件下,選擇最優(yōu)的PCIe 拓撲結(jié)構(gòu),實現(xiàn)計算資源的優(yōu)化配置,加速AI服務(wù)器的計算處理能力,面向具體應(yīng)用場景優(yōu)化現(xiàn)有拓撲和創(chuàng)新設(shè)計計算架構(gòu),將為云數(shù)據(jù)時代帶來新的發(fā)展契機。

        猜你喜歡
        深度模型
        一半模型
        深度理解一元一次方程
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
        深度觀察
        深度觀察
        深度觀察
        深度觀察
        3D打印中的模型分割與打包
        FLUKA幾何模型到CAD幾何模型轉(zhuǎn)換方法初步研究
        中国极品少妇videossexhd| 国产成人自拍高清在线| 中文字幕色av一区二区三区| 亚洲欧美另类激情综合区| 国产在亚洲线视频观看| 经典亚洲一区二区三区| 日韩中文字幕版区一区二区三区| 帮老师解开蕾丝奶罩吸乳视频 | 人人摸人人搞人人透| 女人被做到高潮免费视频| 97人妻无码免费专区| 亚洲av色av成人噜噜噜| 久久人人爽爽爽人久久久| 天天做天天爱天天综合网| a√无码在线观看| 一本色道久久88加勒比| 吃奶呻吟打开双腿做受视频| 全免费a级毛片免费看视频| 国产福利一区二区三区视频在线看 | av狼人婷婷久久亚洲综合| 青青草是针对华人绿色超碰| 亚洲va久久久噜噜噜久久天堂| 大香伊蕉国产av| 92精品国产自产在线观看48页| 久久99人妖视频国产| 日本又色又爽又黄的a片18禁| а中文在线天堂| 亚洲愉拍自拍视频一区| 国产亚洲精品97在线视频一| 久久www色情成人免费观看| 乱人伦视频69| 亚洲av男人的天堂在线| 精品人妻av区乱码| 国产精品 视频一区 二区三区| 亚洲一区二区三区99区| 久久精品色福利熟妇丰满人妻91| 50岁熟妇大白屁股真爽| 99久久精品一区二区三区蜜臀 | 无码人妻久久一区二区三区app| 亚洲AV综合久久九九| 日本免费三级一区二区|