0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

NVIDIA DOCA堆棧和打包的復(fù)雜性

星星科技指導(dǎo)員 ? 來源:NVIDIA ? 作者:Justin Betz ? 2022-04-19 16:20 ? 次閱讀

NVIDIA DOCA 的早期接入版本于今年早些時(shí)候在 GTC 上發(fā)布。 DOCA 標(biāo)志著我們專注于尋找加速計(jì)算的新方法。 DPU 范式作為 SmartNICs 的發(fā)展終于出現(xiàn)了。我們通過加速、卸載并將數(shù)據(jù)中心基礎(chǔ)架構(gòu)與 DPU 隔離,使開發(fā)人員和應(yīng)用程序架構(gòu)師能夠從通用 CPU 中榨取更多價(jià)值。

考慮 DOCA 最重要的方式之一是 DPU 啟用平臺(tái)。 DOCA 能夠?qū)?DPU 功能快速消耗到新的和現(xiàn)有的數(shù)據(jù)中心軟件堆棧中。

現(xiàn)代數(shù)據(jù)中心不僅僅由簡單的網(wǎng)絡(luò)基礎(chǔ)設(shè)施組成。操作高效且可擴(kuò)展的數(shù)據(jù)中心的關(guān)鍵是軟件。編排、資源調(diào)配、監(jiān)視和遙測都是軟件組件。甚至網(wǎng)絡(luò)基礎(chǔ)設(shè)施本身也主要是軟件的功能。網(wǎng)絡(luò)節(jié)點(diǎn)上使用的網(wǎng)絡(luò)操作系統(tǒng)決定了功能集,并圍繞操作工具和監(jiān)控驅(qū)動(dòng)許多下游決策。

我們稱 DOCA 為一個(gè)帶有 SDK 的軟件框架,但它不僅僅是這樣。當(dāng)考慮什么是 DOCA 以及如何使用它時(shí), SDK 是一個(gè)很好的起點(diǎn)。一個(gè)常見的混淆源是組件運(yùn)行的位置。主機(jī)上需要哪些 DOCA 組件, DPU 上需要哪些組件?與運(yùn)行時(shí)環(huán)境相比,在哪些條件下需要 SDK ? DOCA 庫具體是什么?

概述

對于 DOCA 的新手來說,這篇文章揭開了 DOCA 堆棧和打包的復(fù)雜性。首先,我想重溫一些術(shù)語并完善它們在 DOCA 上下文中的含義。

SDK

這是一個(gè)軟件開發(fā)工具包。在上下文中,應(yīng)用程序開發(fā)人員需要能夠使用 DOCA 編寫和編譯軟件。它包含運(yùn)行時(shí)、庫和驅(qū)動(dòng)程序。并不是每個(gè)人都需要與 SDK 打包或通常是 SDK 一部分的所有東西。

從嚴(yán)格意義上講, SDK 更多的是打包軟件組件,但它也被用來最簡潔(盡管不完全準(zhǔn)確)地描述行業(yè)應(yīng)該如何思考 DOCA 是什么以及如何使用它。 DOCA 主要供應(yīng)用程序開發(fā)人員使用。

運(yùn)行

這是運(yùn)行或執(zhí)行 DOCA 應(yīng)用程序所需的組件集。它包含 DOCA 應(yīng)用程序必須運(yùn)行的鏈接庫和驅(qū)動(dòng)程序。就打包而言,它不需要包含頭文件和源文件,就可以編寫和構(gòu)建(編譯)應(yīng)用程序。 DOCA 應(yīng)用程序可以為 x86 或 ARM 編寫和構(gòu)建,因此每個(gè)體系結(jié)構(gòu)都有不同的運(yùn)行時(shí)包。

這里有兩種不同的背景。在更廣泛和更一般的上下文中,庫是應(yīng)用程序使用的資源的集合。庫資源可能包括各種數(shù)據(jù),如配置、文檔或幫助數(shù)據(jù);消息模板;預(yù)先編寫的代碼;以及子例程、類、值或類型規(guī)范。

在 DOCA 的上下文中,庫還提供了更多功能和有用的行為實(shí)現(xiàn)的集合。它們提供了定義良好的接口,通過這些接口可以調(diào)用該行為。

例如, DOCA DPI 庫提供了一個(gè)用于檢查和處理網(wǎng)絡(luò)數(shù)據(jù)包內(nèi)容的框架。

從頭開始使用 DPU 正則表達(dá)式加速器編寫 DPI 應(yīng)用程序需要大量工作。您必須編寫所有預(yù)處理和后處理例程來解析數(shù)據(jù)包頭和有效負(fù)載,然后編寫一個(gè)過程來編譯 RegEx 規(guī)則,以便在加速器上進(jìn)行高速查找。

pYYBAGJecN-AXBQhAAAgHNiqCtE429.jpg

圖 1 DOCA DPI 庫塊。

驅(qū)動(dòng)程序

設(shè)備驅(qū)動(dòng)程序?yàn)橛布O(shè)備提供接口。此位軟件是最低級(jí)別的抽象。 DOCA 為 DPU 的特定硬件功能提供了額外的抽象層。這樣,隨著 DPU 硬件的發(fā)展,對底層硬件的更改將不需要 DOCA 應(yīng)用程序也進(jìn)行更新,以遵循新的或不同的驅(qū)動(dòng)程序接口。

DOCA 與 CUDA 的相似之處

考慮 DOCA 包裝的另一個(gè)有用方法是通過其與 CUDA 的相似性。 DOCA 運(yùn)行時(shí)旨在以類似于 NVIDIA 顯示驅(qū)動(dòng)程序包為 CUDA 提供的方式包含所有驅(qū)動(dòng)程序和庫。

必須調(diào)用 CUDA 庫進(jìn)行 GPU 處理的應(yīng)用程序只需要安裝 NVIDIA 顯示驅(qū)動(dòng)程序包。同樣, DOCA 應(yīng)用程序只需要特定體系結(jié)構(gòu)的運(yùn)行時(shí)包。在這兩種情況下,您都有一套附加的包和工具,用于將 GPU 或 DPU 功能和加速集成到應(yīng)用程序中。

poYBAGJecN-AWLh_AABU8uj-cdk290.jpg

圖 2 DOCA 與 CUDA 運(yùn)行時(shí)和開發(fā)人員工具包堆棧。

DOCA 平臺(tái)要求

另一個(gè)復(fù)雜的因素可能是在哪個(gè)平臺(tái)上需要哪些 DOCA 組件。畢竟, DPU 運(yùn)行自己的操作系統(tǒng),但也將自己作為主機(jī)操作系統(tǒng)的外圍設(shè)備。

DOCA 應(yīng)用程序可以在 x86 主機(jī)上運(yùn)行,也可以在 DPU ARM 內(nèi)核上運(yùn)行。 DOCA 應(yīng)用程序在 x86 主機(jī)上運(yùn)行,旨在通過 DOCA 庫調(diào)用使用 DPU 加速功能。就打包而言,不同的 OSs 可能意味著所有這些組件的安裝過程都不同,但幸運(yùn)的是,這并不像管理員看起來那么混亂。

對于 NVIDIA BlueField DPU ,所有運(yùn)行時(shí)和 SDK 組件都與操作系統(tǒng)映像捆綁在一起??梢栽?DPU 上編寫、構(gòu)建和編譯 DOCA 應(yīng)用程序,以進(jìn)行快速測試。所有的 DOCA 組件都在那里,但這并不總是一個(gè)理想的開發(fā)環(huán)境。 DPU 操作系統(tǒng)映像內(nèi)置并包含 SDK 組件,這對每個(gè)人來說都很容易,因?yàn)樗前\(yùn)行時(shí)組件的超集。

對于 x86 主機(jī)來說,有更多的單個(gè)組件需要考慮。管理員在主機(jī)上需要的包同樣主要取決于此主機(jī)是開發(fā)環(huán)境還是構(gòu)建服務(wù)器,以及它的體系結(jié)構(gòu)?;蛘咧鳈C(jī)將運(yùn)行并執(zhí)行調(diào)用 DOCA 庫的應(yīng)用程序?

對于注定要用作開發(fā)環(huán)境的 x86 主機(jī),還有一個(gè)額外的考慮因素。為了開發(fā)將在 x86 CPU 上運(yùn)行的 DOCA 應(yīng)用程序,管理員需要主機(jī)包的本機(jī) x86 DOCA SDK 。對于從 x86 主機(jī)開發(fā) ARM 應(yīng)用程序, NVIDIA 有一個(gè)預(yù)構(gòu)建的 DOCA 開發(fā)容器,用于管理所有跨平臺(tái)的復(fù)雜性。

對于僅使用 DOCA 運(yùn)行或執(zhí)行應(yīng)用程序的 x86 主機(jī)來說,最簡單的情況就是 DOCA 主機(jī)運(yùn)行時(shí)包能夠滿足這一要求。它包含了使使用 DOCA 庫編寫的應(yīng)用程序能夠在目標(biāo)機(jī)器上正確執(zhí)行的最小組件集。圖 3 顯示了跨兩個(gè)不同 OS 域的不同組件。

pYYBAGJecOKAdpjYAAB8EBiFopI447.jpg

圖 3 DOCA 主機(jī)和 BlueField 之間的打包 DPU 。

簡化安裝

既然我已經(jīng)解釋了所有這些打包是如何在 x86 主機(jī)上工作的,那么我應(yīng)該指出,您可以通過一種簡單的方法將正確的組件安裝到正確的位置。 NVIDIA SDK Manager 減少了管理這種打包復(fù)雜性所需的時(shí)間和精力。 SDK Manager 不僅可以在主機(jī)上安裝或修復(fù) SDK 組件,還可以通過圖形界面檢測操作系統(tǒng)并將其安裝到 BlueField DPU 上。小菜一碟!

poYBAGJecOOAG6rDAAHYQw8_Vas977.png

圖 4 SDK Manager 圖形界面,用于設(shè)置 DPU 和安裝 DOCA 組件。

關(guān)于作者

Justin Betz 是 NVIDIA 的技術(shù)營銷工程師,專注于推廣 DOCA 和 DPU 加速應(yīng)用程序。在 NVIDIA 之前,他曾在 Cumulus Networks 的技術(shù)營銷團(tuán)隊(duì)工作。 Justin 擁有多個(gè)網(wǎng)絡(luò)工程認(rèn)證,包括 Cisco CCIE 和 Cumulus CCONP ,畢業(yè)于羅切斯特理工學(xué)院,獲得網(wǎng)絡(luò)安全和系統(tǒng)管理學(xué)士學(xué)位。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • NVIDIA
    +關(guān)注

    關(guān)注

    14

    文章

    5063

    瀏覽量

    103440
  • 應(yīng)用程序
    +關(guān)注

    關(guān)注

    37

    文章

    3287

    瀏覽量

    57799
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    交通運(yùn)輸領(lǐng)先企業(yè)率先采用NVIDIA Cosmos平臺(tái)

    支撐自動(dòng)駕駛汽車開發(fā)有三個(gè)關(guān)鍵計(jì)算平臺(tái):NVIDIA DGX 平臺(tái)用于在數(shù)據(jù)中心訓(xùn)練基于 AI 的堆棧;運(yùn)行在NVIDIA OVX 平臺(tái)上的NVIDIA Omniverse 平臺(tái),用于
    的頭像 發(fā)表于 01-09 16:02 ?140次閱讀

    NVIDIA DOCA 2.9版本的亮點(diǎn)解析

    NVIDIA DOCA通過為開發(fā)者提供全面的軟件框架以利用硬件加速來增強(qiáng) NVIDIA 網(wǎng)絡(luò)平臺(tái)的功能,從而提高性能、安全和效率。其 API、庫和工具生態(tài)系統(tǒng)簡化了數(shù)據(jù)中心基礎(chǔ)設(shè)施的
    的頭像 發(fā)表于 11-27 11:15 ?366次閱讀
    <b class='flag-5'>NVIDIA</b> <b class='flag-5'>DOCA</b> 2.9版本的亮點(diǎn)解析

    NVIDIA DOCA-OFED的主要特性

    NVIDIA DOCA 軟件平臺(tái)釋放了 NVIDIA BlueField 網(wǎng)絡(luò)平臺(tái)的潛力,并為NVIDIA BlueField和ConnectX設(shè)備提供了所需的所有主機(jī)驅(qū)動(dòng)程序。
    的頭像 發(fā)表于 11-09 13:50 ?317次閱讀

    光伏連接器外殼:超越簡單塑料的復(fù)雜性與重要

    將深入探討光伏連接器外殼的設(shè)計(jì)要求及其超越簡單塑料的復(fù)雜性與重要。 一、光伏連接器外殼的設(shè)計(jì)要求 材料選擇 光伏連接器的外殼并非簡單的塑料,而是需要經(jīng)過精心選擇的材料,以滿足以下要求: 耐候:光伏系統(tǒng)通常安
    的頭像 發(fā)表于 11-04 14:50 ?207次閱讀
    光伏連接器外殼:超越簡單塑料的<b class='flag-5'>復(fù)雜性</b>與重要<b class='flag-5'>性</b>

    借助NVIDIA Metropolis微服務(wù)構(gòu)建視覺AI應(yīng)用

    伴隨著視覺 AI 復(fù)雜性的增加,精簡的部署解決方案已成為優(yōu)化空間和流程的關(guān)鍵。NVIDIA 能夠加快企業(yè)的開發(fā)速度,借助 NVIDIA Metropolis AI 工作流和微服務(wù),企業(yè)只需數(shù)周就能將想法變成現(xiàn)實(shí),而原本這項(xiàng)工作需
    的頭像 發(fā)表于 09-09 09:46 ?377次閱讀
    借助<b class='flag-5'>NVIDIA</b> Metropolis微服務(wù)構(gòu)建視覺AI應(yīng)用

    簡單認(rèn)識(shí)NVIDIA網(wǎng)絡(luò)平臺(tái)

    NVIDIA Spectrum-X800 平臺(tái)是業(yè)界第一代 800Gb/s 的以太網(wǎng)網(wǎng)絡(luò)平臺(tái),包括了 NVIDIA Spectrum SN5600 800Gb/s 以太網(wǎng)交換機(jī)和 NVIDIA
    的頭像 發(fā)表于 09-09 09:22 ?469次閱讀

    堆棧和內(nèi)存的基本知識(shí)

    本文主要聊聊關(guān)于堆棧的內(nèi)容。包括堆棧和內(nèi)存的基本知識(shí)。常見和堆棧相關(guān)的 bug,如棧溢出,內(nèi)存泄漏,堆內(nèi)存分配失敗等。后面介紹軟件中堆棧統(tǒng)計(jì)的重要
    的頭像 發(fā)表于 08-29 14:10 ?521次閱讀
    <b class='flag-5'>堆棧</b>和內(nèi)存的基本知識(shí)

    IB Verbs和NVIDIA DOCA GPUNetIO性能測試

    NVIDIA DOCA GPUNetIO 是 NVIDIA DOCA SDK 中的一個(gè)庫,專門為實(shí)時(shí)在線 GPU 數(shù)據(jù)包處理而設(shè)計(jì)。它結(jié)合了 GPUDirect RDMA 和 GPUD
    的頭像 發(fā)表于 08-23 17:03 ?676次閱讀
    IB Verbs和<b class='flag-5'>NVIDIA</b> <b class='flag-5'>DOCA</b> GPUNetIO性能測試

    為什么電路要設(shè)計(jì)得這么復(fù)雜?

    電路設(shè)計(jì)的復(fù)雜性主要源于以下幾個(gè)方面: 功能需求:電路需要實(shí)現(xiàn)特定的功能,如信號(hào)處理、數(shù)據(jù)傳輸、控制等。為了實(shí)現(xiàn)這些功能,電路必須包含相應(yīng)的電子元件和連接,這自然增加了設(shè)計(jì)的復(fù)雜性。 性能要求:電路
    的頭像 發(fā)表于 08-21 17:32 ?591次閱讀

    NVIDIA Jetson Orin系列邊緣計(jì)算主機(jī)

    EC-OrinNano和EC-OrinNX均搭載NVIDIA原裝JetsonOrin核心板模組,該系列可提供強(qiáng)大的AI計(jì)算能力、大容量統(tǒng)一內(nèi)存和全面的軟件堆棧,支持Transformer架構(gòu)的大模型
    的頭像 發(fā)表于 07-10 08:02 ?783次閱讀
    <b class='flag-5'>NVIDIA</b> Jetson Orin系列邊緣計(jì)算主機(jī)

    NVIDIA 通過 Holoscan 為 NVIDIA IGX 提供企業(yè)軟件支持

    和部署邊緣 AI 解決方案。 NVIDIA AI Enterprise-IGX 是一款全新產(chǎn)品,其為企業(yè)的邊緣計(jì)算軟件堆棧提供前所未有的性能、安全和支持,簡
    的頭像 發(fā)表于 06-04 10:21 ?537次閱讀

    借助NVIDIA DOCA 2.7增強(qiáng)AI 云數(shù)據(jù)中心和NVIDIA Spectrum-X

    NVIDIA DOCA 加速框架為開發(fā)者提供了豐富的庫、驅(qū)動(dòng)和 API,以便為 NVIDIA BlueField DPU 和 SuperNIC 創(chuàng)建高性能的應(yīng)用程序和服務(wù)。
    的頭像 發(fā)表于 05-29 09:22 ?528次閱讀

    FPGA 原型設(shè)計(jì)開發(fā)復(fù)雜性策略

    FPGA 被封裝在更大的封裝中,從而提供了更多的 I/O。"然而,I/O 的增加并不像邏輯資源那樣引人注目。
    發(fā)表于 04-11 11:48 ?315次閱讀
    FPGA 原型設(shè)計(jì)開發(fā)<b class='flag-5'>復(fù)雜性</b>策略

    基于NVIDIA DOCA 2.6實(shí)現(xiàn)高性能和安全的AI云設(shè)計(jì)

    作為專為 NVIDIA? BlueField? 網(wǎng)絡(luò)平臺(tái)而設(shè)計(jì)的數(shù)據(jù)中心基礎(chǔ)設(shè)施軟件框架,NVIDIA? DOCA? 使廣大開發(fā)者能夠利用其行業(yè)標(biāo)準(zhǔn) API 在 NVIDIA Blue
    的頭像 發(fā)表于 02-23 10:02 ?509次閱讀

    解決選擇合適安全控制器的復(fù)雜性

    作者:Jeff Shepard 投稿人:DigiKey 北美編輯 工業(yè)系統(tǒng)中的安全是一個(gè)關(guān)鍵而復(fù)雜的主題,因此為給定應(yīng)用指定最佳安全控制器具有挑戰(zhàn)。其中考慮因素包括與安全控制器相關(guān)的眾多
    的頭像 發(fā)表于 02-13 13:32 ?621次閱讀
    解決選擇合適安全控制器的<b class='flag-5'>復(fù)雜性</b>