如何使用PCIe交換網結構在多主機係統中優化資源部署
發布時間:2020-10-27 責任編輯:lina
【導讀】 越來越多的數據中心和其他高性能計算環境開始使用GPU,因為GPU能neng夠gou快kuai速su處chu理li深shen度du學xue習xi和he機ji器qi學xue習xi應ying用yong中zhong生sheng成cheng的de大da量liang數shu據ju。不bu過guo,就jiu像xiang許xu多duo可ke提ti高gao應ying用yong性xing能neng的de新xin型xing數shu據ju中zhong心xin創chuang新xin一yi樣yang,這zhe項xiang創chuang新xin也ye暴bao露lu出chu新xin的de係xi統tong瓶ping頸jing。
越來越多的數據中心和其他高性能計算環境開始使用GPU,因為GPU能neng夠gou快kuai速su處chu理li深shen度du學xue習xi和he機ji器qi學xue習xi應ying用yong中zhong生sheng成cheng的de大da量liang數shu據ju。不bu過guo,就jiu像xiang許xu多duo可ke提ti高gao應ying用yong性xing能neng的de新xin型xing數shu據ju中zhong心xin創chuang新xin一yi樣yang,這zhe項xiang創chuang新xin也ye暴bao露lu出chu新xin的de係xi統tong瓶ping頸jing。在這些應用中,用於提高係統性能的新興架構涉及通過一個PCIe®結構在多個主機之間共享係統資源。
PCIe標準(特別是其基於樹的傳統層級)會限製資源共享的實現方式(和實現程度)。不過,可以實現一種低延時的高速結構方法,這種方法允許在多個主機之間共享大量GPU和NVMe SSD,同時仍支持標準係統驅動程序。
PCIe結構方法采用動態分區和多主機單根I/O虛擬化(SR-IOV)共享。各PCIe結構之間可直接路由點對點傳輸。這樣便可為點對點傳輸提供最佳路由,減少根端口擁塞,並且更有效地平衡CPU資源的負載。
傳統上,GPU傳輸必須訪問CPU的係統存儲器,這會導致端點之間發生存儲器共享爭用。 當GPU使用其共享的存儲器映射資源而不是CPU存儲器時,它可以在本地提取數據,無需先通過CPU傳遞數據。這消除了跳線和鏈路以及由此產生的延時,從而使GPU能夠更高效地處理數據。
PCIe的固有限製
PCIe主層級是一個樹形結構,其中的每個域都有一個根聯合體,從該點可擴展到“葉子”,這些“葉子”通過交換網和橋接器到達端點。鏈路的嚴格層級和方向性給多主機、多交換網係統帶來了成本高昂的設計要求。

圖1——多主機拓撲
以圖1所示的係統為例。要符合PCIe的層級,主機1必須在交換網1中有一個專用的下行端口,該端口連接到交換網2中的專用上行端口。它還需要在交換網2中有一個專用的下行端口,該端口連接到交換網3中的專用上行端口,依此類推。主機2和主機3也有類似的要求,如圖2所示。

圖2——每個主機的層級要求
即使是基於PCIe樹形結構的最基本係統,也需要各交換網之間有三個鏈路專用於每個主機的PCIe拓撲。而且,由於主機之間無法共享這些鏈路,因此係統會很快變得極為低效。
此外,符合PCIe的典型層級隻有一個根端口,而且盡管“多根I/O虛擬化和共享”規範中支持多個根,但它會使設計更複雜,並且當前不受主流CPU支持。結果會造成未使用的PCIe設備(即端點)滯留在其分配到的主機中。不難想象,這在采用多個GPU、存儲設備及其控製器以及交換網的大型係統中會變得多麼低效。
例如,如果第一個主機(主機1)已經消耗了所有計算資源,而主機2和3未充分利用資源,則顯然希望主機1訪問這些資源。但主機1無法這樣做,因為這些資源在它的層級域之外,因此會發生滯留。非透明橋接(NTB)是這種問題的一個潛在解決方案,但由於每種類型的共享PCIe設備都需要非標準驅動程序和軟件,因此這同樣會使係統變得複雜。更好的方法是使用PCIe結構,這種結構允許標準PCIe拓撲容納多個可訪問每個端點的主機。
實施方法
係統使用一個PCIe結構交換網(本例中為Microchip Switchtec® PAX係列的成員)在兩個獨立但可透明互操作的域中實現:即包含所有端點和結構鏈路的結構域以及每個主機專用的主機域(圖3)。主機通過在嵌入式CPU上運行的PAX交換網固件保留在單獨的虛擬域中,因此,交換網將始終顯示為具有直連端點的標準單層PCIe設備,而與這些端點出現在結構中的位置無關。

圖3——每個結構的獨立域
來自主機域的事務會在結構域中轉換為ID和he地di址zhi,反fan之zhi,結jie構gou域yu中zhong通tong信xin的de非fei分fen層ceng路lu由you也ye是shi如ru此ci。這zhe樣yang,係xi統tong中zhong的de所suo有you主zhu機ji便bian可ke共gong享xiang連lian接jie交jiao換huan網wang和he端duan點dian的de結jie構gou鏈lian路lu。交jiao換huan網wang固gu件jian會hui攔lan截jie來lai自zi主zhu機ji的de所suo有you配pei置zhi平ping麵mian通tong信xin(包括PCIe枚舉過程),並使用數量可配置的下行端口虛擬化一個符合PCIe規範的簡單交換網。
當所有控製平麵通信都路由到交換網固件進行處理時,數據平麵通信直接路由到端點。其他主機域中未使用的GPU不再滯留,因為它們可以根據每個主機的需求動態分配。結構內支持點對點通信,這使其能夠適應機器學習應用。當以符合PCIe規範的方式向每個主機提供功能時,可以使用標準驅動程序。
操作方法
為了解這種方法的工作原理,我們以圖4中的係統為例,該係統由兩個主機(主機1采用Windows®係統,主機2采用Linux®係統)、四個PAX PCIe結構交換網、四個Nvidia M40 GPGPU和一個支持SR-IOV的Samsung NVMe SSD組成。在本實驗中,主機運行代表實際機器學習工作負載的通信,包括Nvidia的CUDA點對點通信基準測試實用程序和訓練cifar10圖像分類的TensorFlow模型。嵌入式交換網固件處理交換網的低級配置和管理,係統由Microchip的ChipLink調試和診斷實用程序管理。

圖4:雙主機PCIe結構引擎
四個GPU最初分配給主機1,PAX結構管理器顯示在結構中發現的所有設備,其中GPU綁定到Windows主機。但是,主機上的結構不再複雜,所有GPU就像直接連接到虛擬交換網一樣。隨後,結構管理器將綁定所有設備,Windows設備管理器將顯示GPU。主機將交換網視為下行端口數量可配置的簡單物理PCIe交換網。
一旦CUDA發現了四個GPU,點對點帶寬測試就會顯示單向傳輸速率為12.8 GBps,雙向傳輸速率為24.9 GBps。這些傳輸直接跨過PCIe結構,而無需通過主機。如果運行用於訓練Cifar10圖像分類算法的TensorFlow模型並使工作負載分布在全部四個GPU上,則可以將兩個GPU釋放回結構池中,將它們與主機解除綁定。這樣可以釋放其餘兩個GPU來執行其他工作負載。與Windows主機一樣,Linux主機也將交換網視為簡單的PCIe交換網,無需自定義驅動程序,而CUDA也可以發現GPU,並在Linux主機上運行P2P傳輸。性能類似於使用Windows主機實現的性能,如表1所示。
表1:GPU點對點傳輸帶寬

下一步是將SR-IOV虛擬功能連接到Windows主機,PAX將此類功能以標準物理NVM設備的形式提供,以便主機可以使用標準NVMe驅動程序。此後,虛擬功能將與Linux主機結合,並且新的NVMe設備將出現在模塊設備列表中。本實驗的結果是,兩個主機現在都可以獨立使用其虛擬功能。
務必注意的是,虛擬PCIe交換網和所有動態分配操作都以完全符合PCIeguifandefangshichengxiangeizhuji,yibianzhujinenggoushiyongbiaozhunqudongchengxu。qianrushijiaohuanwanggujiantigongleyigejiandandeguanlijiekou,zheyangbianketongguochengbendiliandewaibuchuliqilaipeizhiheguanliPCIe結構。設備點對點事務默認情況下處於使能狀態,不需要外部結構管理器進行額外配置或管理。
總結
PCIe交換網結構是一種能夠充分利用CPU巨大性能的絕佳方法,但PCIe標準本身存在一些障礙。不過,可以通過使用動態分區和多主機單根I/O虛擬化共享技術來解決這些難題,以便可以將GPU和NVMe資源實時動態分配給多主機係統中的任何主機,從而滿足機器學習工作負載不斷變化的需求。
(來源:Microchip Technology Inc.,作者:固件工程技術顧問 Vincent Haché)
免責聲明:本文為轉載文章,轉載此文目的在於傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問題,請電話或者郵箱聯係小編進行侵刪。
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 一秒檢測,成本降至萬分之一,光引科技把幾十萬的台式光譜儀“搬”到了手腕上
- AI服務器電源機櫃Power Rack HVDC MW級測試方案
- 突破工藝邊界,奎芯科技LPDDR5X IP矽驗證通過,速率達9600Mbps
- 通過直接、準確、自動測量超低範圍的氯殘留來推動反滲透膜保護
- 從技術研發到規模量產:恩智浦第三代成像雷達平台,賦能下一代自動駕駛!
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
按鈕開關
白色家電
保護器件
保險絲管
北鬥定位
北高智
貝能科技
背板連接器
背光器件
編碼器型號
便攜產品
便攜醫療
變容二極管
變壓器
檳城電子
並網
撥動開關
玻璃釉電容
剝線機
薄膜電容
薄膜電阻
薄膜開關
捕魚器
步進電機
測力傳感器
測試測量
測試設備
拆解
場效應管
超霸科技



