

本文來自“專用數(shù)據(jù)處理器(DPU)性能基準(zhǔn)評測方法與實現(xiàn)(2022)”介紹 DPU 性能測試系統(tǒng)框架與測試流程,包括測試系統(tǒng)、測試要求、測試活動三部分。具體的,測試系統(tǒng)定義了三種搭建 DPU 測試系統(tǒng)的方法,測試要求闡述了組建 DPU 測試系統(tǒng)時需要滿足的要求,測試活動定義了DPU Benchmark 的選擇策略、執(zhí)行前準(zhǔn)備、執(zhí)行過程及測試結(jié)果報告。
DPU 測試系統(tǒng)(System Under Test,SUT)是測試 DPU 性能的平臺,其結(jié)構(gòu)在不同應(yīng)用場景中,主要分為三類:單端型測試系統(tǒng)(Single-End)、端到端型測試系統(tǒng)(End-to-End)和多端型測試系統(tǒng)(Multi-End)。
單端型(Single-End)測試系統(tǒng)是主機與 DPU 通過總線互聯(lián)構(gòu)成的封閉測試系統(tǒng),主要用于模擬無網(wǎng)絡(luò)連接情況下,DPU 作為專用加速器執(zhí)行主機端特定業(yè)務(wù)的過程。在這種系統(tǒng)中,計算與數(shù)據(jù)傳輸僅在主機與 DPU 之間進行,DPU 不與其他設(shè)備通信,僅執(zhí)行特定計算業(yè)務(wù)。單端型測試系統(tǒng)主要測試 DPU 對特定計算任務(wù)的性能提升。
端到端型(End-to-End)測試系統(tǒng)將兩個單端型測試系統(tǒng)通過簡單網(wǎng)絡(luò)相連(網(wǎng)線直連),其中一個為請求發(fā)起者(Initiator/Client),另一個為請求接受者(Target/Server)。
端到端型測試系統(tǒng)主要模擬 DPU 作為網(wǎng)絡(luò)加速器執(zhí)行雙端操作的場景。在這種系統(tǒng)中,計算與數(shù)據(jù)傳輸不僅在主機與 DPU 之間進行,還通過網(wǎng)絡(luò)傳輸?shù)狡渌到y(tǒng)。DPU 在Server 端接收主機端發(fā)起的網(wǎng)絡(luò)請求并通過網(wǎng)口轉(zhuǎn)發(fā),或者在 Client 端接收網(wǎng)絡(luò)的請求并向作出響應(yīng)。端到端型測試系統(tǒng)能夠屏蔽網(wǎng)絡(luò)性能(轉(zhuǎn)發(fā)次數(shù)、交換設(shè)備的性能、轉(zhuǎn)發(fā)設(shè)備的性能)對 DPU 性能的影響,主要測試 DPU 對網(wǎng)絡(luò)協(xié)議卸載、網(wǎng)絡(luò)數(shù)據(jù)包處理的峰值能力。
多端型(Multi-End)測試系統(tǒng)是多個單端型測試系統(tǒng)通過復(fù)雜的網(wǎng)絡(luò)拓?fù)湎噙B的開放測試系統(tǒng)。該測試系統(tǒng)主要模擬 DPU 作為網(wǎng)絡(luò)加速器在復(fù)雜環(huán)境中處理網(wǎng)絡(luò)任務(wù)的場景。在這種系統(tǒng)中,網(wǎng)絡(luò)環(huán)境(網(wǎng)絡(luò)拓?fù)洌┡c資源分布(相同或者不同類型的 DPU 系統(tǒng))情況復(fù)雜,DPU 不僅承擔(dān)一對一的網(wǎng)絡(luò)任務(wù),還可能接收一/多個其他系統(tǒng)的請求(含背景流量甚至惡意攻擊)或響應(yīng)一/多個其他系統(tǒng)的請求。
主機與 DPU 通過總線(通常為 PCIe)直接相連形成的可獨立工作的系統(tǒng)為單端型測試系統(tǒng),系統(tǒng)包含支持 DPU 正常工作的軟件和硬件。在這種測試系統(tǒng)中,DPU 作為專用加速器執(zhí)行特點計算業(yè)務(wù)。
單端型測試系統(tǒng)模型的基本結(jié)構(gòu)如圖2.1(a) 所示。運行時環(huán)境(Run Time Environ-ment,RTE)代表運行中的 DPU 測試程序,交換設(shè)備(Switch)為 DPU 與主機系統(tǒng)(Host?System)的互連結(jié)構(gòu)(通常為 PCIe)。在單端型測試系統(tǒng)中,DPU 作為專用加速器,主機使用 DPU 加速某些任務(wù)的處理,如數(shù)據(jù)庫查詢、AI 訓(xùn)練等。任務(wù)數(shù)據(jù)首先從主機端搬運到 DPU,DPU 計算完成后,再將處理完的數(shù)據(jù)寫回主機。在這種工作模式中,DPU測試程序可以以數(shù)據(jù)處理時間、數(shù)據(jù)處理規(guī)模作為性能指標(biāo)。

保證系統(tǒng)正常進行的硬件(內(nèi)存、硬盤等),軟件主要有操作系統(tǒng)、DPU 驅(qū)動、開源工具、DPU Benchmark,結(jié)構(gòu)示意如圖。各部分組件要求如下:
端到端型測試系統(tǒng)是由兩個單端型測試系統(tǒng)通過網(wǎng)線直連的方式組成的測試系統(tǒng)。在這種測試系統(tǒng)中,屏蔽了復(fù)雜的網(wǎng)絡(luò)拓?fù)渑c其他系統(tǒng)流量的影響,可以測試 DPU 網(wǎng)絡(luò)加速的峰值性能。
端到端型測試系統(tǒng)由兩個單端型測試模型直接相連(如圖所示),每個單端測試系統(tǒng)分別運行 DPU Benchmark 測試程序,一般其中一個運行發(fā)起者程序 (Initiator/-Client),另一個運行接收者程序 (Target/Server)。通過發(fā)起者發(fā)送請求,接收者響應(yīng)請求,測量基于網(wǎng)絡(luò)的端到端操作,例如 RDMA Send/Receive 操作,NVMe-oF 遠(yuǎn)程訪問。在這種測試模型中,根據(jù)從一端 DPU 系統(tǒng)到另一端 DPU 系統(tǒng)的請求時間和流量等測試DPU 的延遲、吞吐量等性能。

端對端型測試系統(tǒng)在單端型測試系統(tǒng)的基礎(chǔ)上,增加網(wǎng)絡(luò)基礎(chǔ)設(shè)備(通常為網(wǎng)線)
多端型測試系統(tǒng)是由多個單端型測試系統(tǒng)經(jīng)由復(fù)雜網(wǎng)絡(luò)(復(fù)雜的網(wǎng)絡(luò)拓?fù)洌┻B接形
成的測試系統(tǒng)。在這種測試系統(tǒng)中,可以模擬 DPU 所處的真實網(wǎng)絡(luò)環(huán)境,測試 DPU 網(wǎng)絡(luò)處理的實際性能。
多端型測試系統(tǒng)模型主要用于模擬基于 DPU 構(gòu)建的數(shù)據(jù)中心,通過復(fù)雜的網(wǎng)絡(luò)將
眾多 DPU 系統(tǒng) (功能相同或者不同) 互連起來,從而測試基于 DPU 系統(tǒng)實現(xiàn)的網(wǎng)絡(luò)、存儲或安全加速應(yīng)用的真實性能,如NVMe-oF 讀取不同結(jié)點存儲系統(tǒng)的存儲資源、RDMA訪問不同結(jié)點的資源。在這種測試模型中,根據(jù)請求與響應(yīng)時間、請求的數(shù)據(jù)量及并發(fā)的請求數(shù)等可以測試延時、吞吐量、連接能力等指標(biāo)。

多端型測試系統(tǒng)在單端型測試系統(tǒng)的基礎(chǔ)上,需要增加更復(fù)雜的網(wǎng)絡(luò)基礎(chǔ)設(shè)備用于連接不同節(jié)點的 DPU 系統(tǒng)。這些網(wǎng)絡(luò)基礎(chǔ)設(shè)施包括但不限于集線器、交換機、路由器等。

在 DPU Benchmark 執(zhí)行時,為了保證測試結(jié)果的準(zhǔn)確性與可重復(fù)性,對于同一種測試用例執(zhí)行兩輪(特殊的情況在具體的測試用例說明)。每一輪分為三個部分:預(yù)熱 (Warmup Run) 部分排除初始化干擾;負(fù)載執(zhí)行 (Measured Run) 部分為真正的指標(biāo)測試;結(jié)果檢查 (Result Check) 部分檢查結(jié)果的正確性 (數(shù)據(jù)傳輸?shù)耐暾?,計算結(jié)果的正確性等)。每執(zhí)行完一輪需要恢復(fù)至初始狀態(tài) (Clear up)。在預(yù)熱部分與負(fù)載執(zhí)行之間不允許執(zhí)行其他任務(wù)。每一輪執(zhí)行的過程中,DPU 測試系統(tǒng)配置不可以發(fā)生變化。
在 DPU Benchmark 執(zhí)行過程中,DPU 測試系統(tǒng)不可以重啟或者重新開始。如果 DPU系統(tǒng)測試應(yīng)用、操作系統(tǒng)或者硬件發(fā)生不可恢復(fù)的錯誤時,這一輪的執(zhí)行應(yīng)作無效;如果 DPU 系統(tǒng)測試應(yīng)用、操作系統(tǒng)或者硬件檢測到可恢復(fù)的錯誤,并且錯誤糾正并恢復(fù)正常,那么這一輪的執(zhí)行應(yīng)作有效。在錯誤發(fā)生處理期間,測試者不能人工干預(yù),否則,這一輪執(zhí)行應(yīng)作無效。
測試報告中除了給出不同測試用例的性能指標(biāo),還需要給出測試過程中的全部配置信息,包括:配置參數(shù),包括服務(wù)器、存儲、網(wǎng)絡(luò)等其他硬件設(shè)施;安裝的操作系統(tǒng)、文件系統(tǒng)、測試工具等軟件版本;在測試過程中使用到的其他軟件程序;程序編譯優(yōu)化選項。在執(zhí)行 DPU Benchmark 時如果系統(tǒng)發(fā)送異?;蛘咂渌闆r,需要在報告附錄中指出。
本文來自“專用數(shù)據(jù)處理器(DPU)性能基準(zhǔn)評測方法與實現(xiàn)(2022)”介紹?DPU性能測試系統(tǒng)框架與測試流程,包括測試系統(tǒng)、測試要求、測試活動三部分。完整內(nèi)容請參看原報告。
專用數(shù)據(jù)處理器 (DPU)技術(shù)白皮書
2021中國DPU行業(yè)發(fā)展白皮書
DPU在數(shù)據(jù)中心和邊緣云上的應(yīng)用
英偉達DPU集數(shù)據(jù)中心于芯片
2021中國DPU行業(yè)發(fā)展白皮書?
CCIX緩存一致性互聯(lián)技術(shù)概述
ARM CPU處理器資料匯總(1)
ARM CPU處理器資料匯總(2)
ARM系列處理器應(yīng)用技術(shù)完全手冊
本號資料全部上傳至知識星球,更多內(nèi)容請登錄智能計算芯知識(知識星球)星球下載全部資料。

免責(zé)申明:本號聚焦相關(guān)技術(shù)分享,內(nèi)容觀點不代表本號立場,可追溯內(nèi)容均注明來源,發(fā)布文章若存在版權(quán)等問題,請留言聯(lián)系刪除,謝謝。
電子書<服務(wù)器基礎(chǔ)知識全解(終極版)>更新完畢。
獲取方式:點擊“閱讀原文”即可查看182頁?PPT可編輯版本和PDF閱讀版本詳情。
溫馨提示:
請搜索“AI_Architect”或“掃碼”關(guān)注公眾號實時掌握深度技術(shù)分享,點擊“閱讀原文”獲取更多原創(chuàng)技術(shù)干貨。

