
在 MLPerf Inference v3.0中,NVIDIA 首次將網(wǎng)絡(luò)納入了 MLPerf 的評測項(xiàng)目,成為了 MLPerf 推理數(shù)據(jù)中心套件的一部分。網(wǎng)絡(luò)評測部分旨在模擬在真實(shí)的數(shù)據(jù)中心中,網(wǎng)絡(luò)軟、硬件對于端到端推理性能的影響。
在網(wǎng)絡(luò)評測中,有兩類節(jié)點(diǎn):前端節(jié)點(diǎn)生成查詢,這些查詢通過業(yè)界標(biāo)準(zhǔn)的網(wǎng)絡(luò)(如以太網(wǎng)或 InfiniBand 網(wǎng)絡(luò))發(fā)送到加速節(jié)點(diǎn),由加速器節(jié)點(diǎn)進(jìn)行處理和執(zhí)行推理。

圖 1:單節(jié)點(diǎn)封閉測試環(huán)境與多節(jié)點(diǎn)網(wǎng)絡(luò)測試環(huán)境
圖 1 顯示了在單個節(jié)點(diǎn)上運(yùn)行的封閉測試環(huán)境,以及在網(wǎng)絡(luò)測試環(huán)境中通過前端節(jié)點(diǎn)生成查詢,然后傳輸?shù)郊铀倨鞴?jié)點(diǎn)上進(jìn)行推理的工作流程。
在網(wǎng)絡(luò)測試場景中,加速器節(jié)點(diǎn)包含了推理加速器以及所有網(wǎng)絡(luò)組件,包括網(wǎng)卡(NIC)、網(wǎng)絡(luò)交換機(jī)和完整的網(wǎng)絡(luò)體系。因此,網(wǎng)絡(luò)評測旨在測試加速器節(jié)點(diǎn)和網(wǎng)絡(luò)的性能,因?yàn)榍岸斯?jié)點(diǎn)在基準(zhǔn)測試中的作用有限,可以排除它們對測試的影響。
MLPerf 推理 v3.0 網(wǎng)絡(luò)評測中的
NVIDIA 網(wǎng)絡(luò)性能表現(xiàn)
在 MLPerf 推理 v3.0 中,NVIDIA 提交了在 ResNet-50 和 BERT 兩種場景下的網(wǎng)絡(luò)性能結(jié)果,從 NVIDIA 提交的性能結(jié)果來看,憑借 NVIDIA ConnectX-6 InfiniBand 智能網(wǎng)卡和 GPUDirect RDMA 技術(shù)提供的超高網(wǎng)絡(luò)帶寬和極低延遲,ResNet-50 在網(wǎng)絡(luò)環(huán)境中達(dá)到了 100% 的單節(jié)點(diǎn)性能。

表 1:ResNet-50 和 BERT 上網(wǎng)絡(luò)評測性能和單機(jī)封閉測試性能的比較,有限帶寬實(shí)現(xiàn)了理想性能
NVIDIA 平臺在 BERT 工作負(fù)載方面也表現(xiàn)出了出色的性能,和單機(jī)封閉測試結(jié)果性能僅有輕微的差異,這主要是由于主機(jī)端的一些開銷而導(dǎo)致。
在 NVIDIA 網(wǎng)絡(luò)評測中用到的關(guān)鍵技術(shù)
大量的全棧技術(shù)使 NVIDIA 網(wǎng)絡(luò)評測中的強(qiáng)大性能得以實(shí)現(xiàn):
-
NVIDIA TensorRT 優(yōu)化推理引擎。
-
InfiniBand RDMA 網(wǎng)絡(luò),為張量通信提供低延遲和高帶寬,基于 Mellanox OFED 軟件堆棧中的 IBV verbs 實(shí)現(xiàn)。
-
通過以太網(wǎng) TCP Socket 進(jìn)行配置交換、運(yùn)行狀態(tài)同步和心跳監(jiān)控。
-
利用 CPU、GPU 和 NIC 資源獲得最佳性能時 NUMA-Aware。
網(wǎng)絡(luò)評測部分實(shí)施細(xì)節(jié)
以下是 MLPerf 推理中網(wǎng)絡(luò)評測部分的實(shí)現(xiàn)細(xì)節(jié):
- 采用高吞吐量、低延遲的 InfiniBand 網(wǎng)絡(luò)進(jìn)行通信
- 網(wǎng)絡(luò)評測部分推理流程
- 性能優(yōu)化
通過高吞吐量、低延遲的
InfiniBand 網(wǎng)絡(luò)進(jìn)行通信
網(wǎng)絡(luò)評測過程要求提交者通過查詢調(diào)度庫(QDL)從負(fù)載生成器獲取查詢,然后根據(jù)提交者設(shè)置的方式將查詢發(fā)送到加速器節(jié)點(diǎn)。
-
在生成輸入張量序列的前端節(jié)點(diǎn),QDL 通過測試端(SUT)的 API 對 LoadGen 系統(tǒng)進(jìn)行抽象,這樣用于本地測試的加速器的 MLPerf 推理 LoadGen 就變得可見。
-
在加速器節(jié)點(diǎn),通過 QDL 與負(fù)責(zé)推理請求和響應(yīng)的 LoadGen 直接交互。在 NVIDIA 的 QDL 實(shí)現(xiàn)中,我們使用 InfiniBand IBV verbs 和以太網(wǎng) TCP Socket 實(shí)現(xiàn)了無縫數(shù)據(jù)通信和同步。

圖 2:QDL 內(nèi)部的 InfiniBand 數(shù)據(jù)交換組件
圖 2 顯示了基于 InfiniBand 網(wǎng)絡(luò)技術(shù)的 QDL 中的數(shù)據(jù)交換組件。

圖 3:前端節(jié)點(diǎn)和加速器節(jié)點(diǎn)之間建立連接的示例
圖 3 顯示了如何使用該數(shù)據(jù)交換組件在兩個節(jié)點(diǎn)之間建立連接。
InfiniBand 網(wǎng)絡(luò)的隊(duì)列對(QPs)是節(jié)點(diǎn)之間的連接的基礎(chǔ)。NVIDIA 采用了無損可靠連接(RC)方式(和 TCP 類似)和傳輸模式,并利用 InfiniBand HDR 光纖網(wǎng)絡(luò)來維持高達(dá) 200 Gbits/sec 的吞吐量。
基準(zhǔn)測試開始時,QDL 在初始化過程中會發(fā)現(xiàn)系統(tǒng)中的所有 InfiniBand 網(wǎng)卡,并根據(jù)存儲在 IBCfgs 中的配置信息,指定網(wǎng)卡作為測試的 IBDevice 實(shí)例。在這個測試過程中,用于 RDMA 傳輸?shù)膬?nèi)存區(qū)域被分配、固定和注冊為 RDMA 緩沖區(qū),并與相應(yīng)的的 Handle 一起保存在 IBResources 中。
利用 GPUDirect RDMA 技術(shù),可以將加速器節(jié)點(diǎn)的 GPU 顯存作為 RDMA 緩沖區(qū),并將 RDMA 緩沖區(qū)信息以及相應(yīng)的保護(hù)密鑰通過以太網(wǎng)的 TCP Socket 發(fā)送給相對應(yīng)的節(jié)點(diǎn),這樣就為 QDL 創(chuàng)建 IBConnection 實(shí)例。
由于 QDL 支持 NUMA-Aware,可將最近的 NUMA 主機(jī)內(nèi)存、CPU 和 GPU 映射到每張網(wǎng)卡,每個 NIC 都通過 IBConnection 與對端網(wǎng)卡 NIC 進(jìn)行通信。
網(wǎng)絡(luò)評測部分推理流程

圖 4:使用 Direct GPU RDMA 從前端節(jié)點(diǎn)到加速器節(jié)點(diǎn)的推理請求流
圖 4 顯示了推理請求是如何從前端節(jié)點(diǎn)發(fā)送到加速器節(jié)點(diǎn)并在加速器節(jié)點(diǎn)上被處理的:
-
LoadGen 生成一個查詢(推理請求),其中包含輸入張量。
-
QDL 通過仲裁的方式將該查詢重定向到適當(dāng)?shù)?IBConnection。
-
查詢樣本庫(QSL)可能已經(jīng)被注冊在 RDMA 緩沖區(qū)內(nèi)。如果沒有,則 QDL 將查詢復(fù)制到 RDMA 緩沖區(qū)。
-
QDL 啟動相應(yīng)的 QP 的 RDMA 傳輸。
-
通過網(wǎng)絡(luò)交換機(jī)實(shí)現(xiàn) InfiniBand 網(wǎng)絡(luò)傳輸。
-
查詢到達(dá)對等方的 QP。
-
然后通過直接內(nèi)存訪問技術(shù)將查詢傳輸?shù)侥康牡?RDMA 緩沖區(qū)。
-
加速器節(jié)點(diǎn)的 QDL 確認(rèn) RDMA 傳輸完成。
-
QDL 允許加速器節(jié)點(diǎn)能夠批處理查詢,QDL 標(biāo)記一批查詢,發(fā)布到加速器節(jié)點(diǎn)的某個加速器上去執(zhí)行。
-
加速器節(jié)點(diǎn)的加速器使用 CUDA 和 TensorRT 執(zhí)行推理,在 RDMA 緩沖區(qū)中生成響應(yīng)。
當(dāng)在步驟 10 最終執(zhí)行推理后,會生成輸出張量,并將其置于 RDMA 緩沖區(qū)中。然后加速器節(jié)點(diǎn)開始以類似的方式但以相反的方向?qū)㈨憫?yīng)張量傳輸?shù)角岸斯?jié)點(diǎn)。
性能優(yōu)化
NVIDIA 使用 InfiniBand RDMA_Write 的方式實(shí)現(xiàn)了最短的延遲。要成功地應(yīng)用 RDMA_Write,發(fā)送方必須對于對端的內(nèi)存緩沖區(qū)可見。
前端節(jié)點(diǎn)和加速器節(jié)點(diǎn)都需要管理緩沖區(qū)跟蹤器,以確保每個查詢和響應(yīng)都保存在內(nèi)存中,直到用完為止。例如,ResNet-50 要想達(dá)到理想的性能需要每個連接(QP)管理多達(dá) 8K 個交易。
NVIDIA 用到了以下一些關(guān)鍵優(yōu)化。
以下關(guān)鍵優(yōu)化支持更好的可擴(kuò)展性:
-
每個 IBConnection(QP)的交易跟蹤器:每個 IBConnection 都有一個獨(dú)立的交易跟蹤器,從而實(shí)現(xiàn)無死鎖的、關(guān)聯(lián)內(nèi)交易記賬。
-
每個網(wǎng)卡支持多個 QP:任意數(shù)量的 IBConnections 可以在任何網(wǎng)卡上實(shí)例化,從而可以輕松地自發(fā)支持大量交易。
以下關(guān)鍵優(yōu)化提高了 InfiniBand 網(wǎng)絡(luò)的資源效率:
-
使用 INLINE 的方式傳輸小消息:通過 INLINE 傳輸小消息(通常指小于 64 字節(jié))可避免 PCIe 傳輸,從而顯著提高性能和效率。
-
使用 UNSIGNALLED RDMA Write:由于 UNSIGNALLED 的操作需要在 CQ 隊(duì)列中等待直到 SIGNALLED 操作發(fā)生,再觸發(fā)到目前為止在同一節(jié)點(diǎn)中排隊(duì)的所有事務(wù)的完成處理(批量完成),因此 CQ 維護(hù)變得更加高效。
-
使用 Solicited IB 傳輸:Unsolicited 的 RDMA 操作可以在遠(yuǎn)端節(jié)點(diǎn)中排隊(duì)等待,直到 solicited RDMA 操作發(fā)生,再觸發(fā)遠(yuǎn)端節(jié)點(diǎn)中的批量完成。
-
基于事件的 CQ 管理:避免 CPU 一直忙于等待 CQ,釋放 CPU 個周期。
以下關(guān)鍵優(yōu)化提高了內(nèi)存系統(tǒng)的效率:
-
通過 RDMA 傳輸避免了前端節(jié)點(diǎn)內(nèi)的內(nèi)存拷貝:發(fā)送輸入張量時,通過直接將張量存在在 RDMA 注冊的內(nèi)存中來避免主機(jī)內(nèi)存拷貝。
-
在加速器節(jié)點(diǎn)中聚合 CUDA 的 memcpys:通過盡可能多地集中連續(xù)內(nèi)存中的張量,提高 GPU 顯存拷貝和 PCIe 傳輸?shù)男省?/span>
每家的 QP 實(shí)現(xiàn)涵蓋了能支持的最大完成隊(duì)列條目數(shù)(CQE),以及支持的最大 QP 條目數(shù)。擴(kuò)展每個網(wǎng)卡能支持的 QP 數(shù)量,對于降低延遲,同時保持足夠的實(shí)時交易量以實(shí)現(xiàn)最大吞吐量很重要。
如果 CQ 通過輪詢的方式在短時間內(nèi)處理大量事務(wù),會對主機(jī) CPU 造成顯著的壓力,在這種情況下,采用基于事件的 CQ 管理,以及減少通知的數(shù)量會對此非常有幫助。通過盡可能多地聚集連續(xù)內(nèi)存空間中的數(shù)據(jù),如果可能,聚集在 RDMA 注冊的內(nèi)存空間,可以最大限度地提高內(nèi)存訪問效率。這對于實(shí)現(xiàn)最大性能至關(guān)重要。
總結(jié)
NVIDIA 平臺在其首次提交的網(wǎng)絡(luò)測試結(jié)果中表現(xiàn)出色,充分體現(xiàn)了 NVIDIA 在 MLPerf 推理:數(shù)據(jù)中心封閉部門評測項(xiàng)目中一貫的領(lǐng)先地位,這些結(jié)果歸功于許多 NVIDIA 平臺的強(qiáng)大功能實(shí)現(xiàn):
-
NVIDIA A100 Tensor Core GPU
-
NVIDIA DGX A100
-
NVIDIA ConnectX-6 InfiniBand 網(wǎng)絡(luò)
-
NVIDIA TensorRT
-
GPUDirect RDMA
這個結(jié)果進(jìn)一步證明了 NVIDIA AI 平臺在行業(yè)標(biāo)準(zhǔn)的、業(yè)界公認(rèn)的真實(shí)數(shù)據(jù)中心部署中的高性能和多樣性。
掃描下方二維碼,查看更多有關(guān)NVIDIA InfiniBand 的信息。

?更多精彩內(nèi)容 跨越距離:NVIDIA 平臺解決邊緣的 HPC 問題
GreatSQL & NVIDIA InfiniBand NVMe SSD 存算分離池化方案:實(shí)現(xiàn)高性能分布式部署
NVIDIA Quantum InfiniBand 打造 AI 時代 GPU 計(jì)算的高性能存儲技術(shù)
原文標(biāo)題:新的 MLPerf 推理網(wǎng)絡(luò)部分展現(xiàn) NVIDIA InfiniBand 網(wǎng)絡(luò)和 GPUDirect RDMA 的強(qiáng)大能力
文章出處:【微信公眾號:NVIDIA英偉達(dá)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
-
英偉達(dá)
+關(guān)注
關(guān)注
23文章
4021瀏覽量
97015
原文標(biāo)題:新的 MLPerf 推理網(wǎng)絡(luò)部分展現(xiàn) NVIDIA InfiniBand 網(wǎng)絡(luò)和 GPUDirect RDMA 的強(qiáng)大能力
文章出處:【微信號:NVIDIA_China,微信公眾號:NVIDIA英偉達(dá)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
什么是AI模型的推理能力
解析DCQCN:RDMA在數(shù)據(jù)中心網(wǎng)絡(luò)的關(guān)鍵擁塞控制協(xié)議
NVIDIA Nemotron Nano 2推理模型發(fā)布
利用NVIDIA DPU重塑網(wǎng)絡(luò)安全格局
信而泰×DeepSeek:AI推理引擎驅(qū)動網(wǎng)絡(luò)智能診斷邁向 “自愈”時代
使用外部文件導(dǎo)入NVIDIA Air構(gòu)建網(wǎng)絡(luò)拓?fù)涞膬?yōu)勢
RDMA簡介3之四種子協(xié)議對比
RDMA簡介2之A技術(shù)優(yōu)勢分析
RDMA簡介1之RDMA開發(fā)必要性
適用于數(shù)據(jù)中心和AI時代的800G網(wǎng)絡(luò)
如何實(shí)現(xiàn)開源開放生態(tài)下的RDMA網(wǎng)絡(luò)監(jiān)控?
加速網(wǎng)絡(luò)性能:融合以太網(wǎng) RDMA (RoCE) 的影響
RoCE與IB對比分析(一):協(xié)議棧層級篇

新的 MLPerf 推理網(wǎng)絡(luò)部分展現(xiàn) NVIDIA InfiniBand 網(wǎng)絡(luò)和 GPUDirect RDMA 的強(qiáng)大能力
評論