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

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

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

了解何時使用DOCA驅(qū)動程序和DOCA庫

星星科技指導(dǎo)員 ? 來源:NVIDIA ? 作者:Scott Ciccone ? 2022-06-21 15:14 ? 次閱讀

NVIDIA DOCA 軟件框架包括編程 NVIDIA BlueField 數(shù)據(jù)處理器 ( DPU )并提供一致的體驗,無論開發(fā)環(huán)境如何。 NVIDIA 提供以下資源:

開發(fā)人員計劃

SDK 管理器支持

工具匯編

編譯器

基準測試

API 參考和程序員指南

參考應(yīng)用程序

使用案例

NVIDIA 通過為開發(fā)人員提供 DOCA SDK 和用于開箱即用部署的 DOCA 運行時軟件來提供堆棧。

DOCA 驅(qū)動程序還是 DOCA 庫?

DOCA 驅(qū)動程序和 DOCA 庫是開發(fā)人員、 IT 安全和運營團隊以及 IT 管理員的關(guān)鍵部分。它們用于為 DPU 開發(fā)和部署軟件定義和硬件加速的應(yīng)用程序。然而,我有時會收到關(guān)于正確使用的問題。

為了確保沒有混淆,并確定哪種可能最適合您的開發(fā)需求,我寫了這篇文章來討論何時使用哪種。

表 1 DOCA 驅(qū)動程序與 DOCA 庫

表 1 比較了驅(qū)動程序和庫,并強調(diào)了各自的優(yōu)缺點。本質(zhì)上, DOCA 驅(qū)動程序提供了更大的定制空間,而 DOCA 庫的設(shè)計旨在以更低的編碼復(fù)雜性提供最佳的每個用例性能和擴展。

DOCA 庫

首先, DOCA 庫是針對特定用例優(yōu)化的高級抽象 API 。庫可以通過更快的開發(fā)時間和上市時間來實現(xiàn)優(yōu)異的性能。它們還包括各種指南和示例應(yīng)用程序,這些應(yīng)用程序在用于開發(fā)時比 DOCA 驅(qū)動程序的學(xué)習(xí)曲線更短。

NVIDIA 庫已提前加速。它們使您能夠快速構(gòu)建各種應(yīng)用程序,并顯著提高性能,因為已經(jīng)為指定用例創(chuàng)建和調(diào)整了邏輯。它們還確保了多代兼容性,這在使用 DOCA 驅(qū)動程序時是無法保證的。

這些庫旨在解決特定的用例,如防火墻、網(wǎng)關(guān)或存儲控制器。它們使用 PMD 和 DPDK ,并包含 DPDK 或驅(qū)動程序級別不存在的其他功能和邏輯。

例如,如果使用 RegEx 識別用于深度數(shù)據(jù)包檢查( DPI )的復(fù)雜字符串模式, DOCA DPI 庫包括預(yù)處理(數(shù)據(jù)包頭解析)和后處理例程,以便更容易使用 RegEx 加速器對網(wǎng)絡(luò)數(shù)據(jù)包執(zhí)行操作。 DPDK RegEx API 不包含任何這些內(nèi)容。 DOCA DPI 庫 API 是抽象的,更易于開發(fā)數(shù)據(jù)包檢查例程,因為不需要理解邏輯。

DOCA 庫允許您選擇具有內(nèi)置硬件加速的首選 API 。 DOCA 1.3 的當前版本包括 120 多個 DOCA API :

零信任安全框架

遙測加速服務(wù)

流式服務(wù)實現(xiàn)實時可見性

這些服務(wù)可通過 NGC Catalog 獲得,并可在幾分鐘內(nèi)部署到 BlueField DPU 上。

這些庫的價值是通過運行時環(huán)境、 DOCA 服務(wù)和一組擴展的文檔來實現(xiàn)的。一般的圖書館用戶不會開發(fā)應(yīng)用程序,而是利用 NVIDIA 或第三方提供的現(xiàn)有應(yīng)用程序和服務(wù)。

DOCA 服務(wù)是由多個項目組成的容器化驅(qū)動程序和庫,可以作為服務(wù)運行以提供特定功能。每個服務(wù)都提供不同的功能,例如 DOCA 遙測 API ,它可以在幾分鐘內(nèi)從 NGC 目錄中提取。它提供了一種快速方便的方法來收集用戶定義的數(shù)據(jù)并將其傳輸?shù)?DOCA 遙測服務(wù)( DTS )。

此外, API 還提供了幾個內(nèi)置輸出以方便用戶,包括將數(shù)據(jù)直接保存到存儲器、 NetFlow 、 Fluent 位轉(zhuǎn)發(fā)和 Prometheus 端點。

這些庫中的每一個都共享對象,并且除了它們各自使用 PMD 驅(qū)動程序之外,沒有以任何方式綁定。類似地,每個都有一個公共基礎(chǔ)設(shè)施,每個都有自己的 文檔和程序員指南 。

DOCA 驅(qū)動程序和 DOCA SDK

雖然庫消除了低級編程,但它們可能不支持您正在尋找的所有特性和功能,因此 NVIDIA 提供了 DOCA 驅(qū)動程序。 DOCA 驅(qū)動程序是基于開源的,如果您正在開發(fā)自己的解決方案或必須創(chuàng)建獨特的解決方案,則可以提供更大的靈活性。

NVIDIA 驅(qū)動程序是為開發(fā)人員設(shè)計的,通過 DOCA SDK 提供。 SDK 包括創(chuàng)建和構(gòu)建應(yīng)用程序所需的所有組件,包括參考應(yīng)用程序源、開發(fā)工具、文檔和 NVIDIA SDK 管理器。 SDK 管理器支持快速部署開發(fā)環(huán)境,還可以將映像閃存并安裝到本地 DPU 。

開發(fā)人員容器支持在任何地方開發(fā) DOCA 加速的應(yīng)用程序。您不必在 DPU 上的 Arm 處理器上執(zhí)行此操作。在具有物理 DPU 的主機上,可以在開發(fā)人員容器中執(zhí)行此操作,該容器模擬 Arm 處理器。 NVIDIA 提供了詳細的文檔、示例和 API 兼容性。

DOCA SDK 是利用 DOCA 庫和驅(qū)動程序并創(chuàng)建獨特的個性化軟件以滿足應(yīng)用程序開發(fā)需求的最有效方法。

DOCA 運行時也可用于驗證和測試應(yīng)用程序。

DOCA 運行時

如果您尚未準備好或無法將應(yīng)用程序移植到 Arm 體系結(jié)構(gòu), NVIDIA 將為 x86 提供 DOCA 運行時。在這種情況下, gRPC 客戶端在 DPU 上運行,并與 x86 運行時建立通信通道。應(yīng)用程序可以訪問 DPU 運行時組件,您不必編譯任何 Arm 代碼。

軟件定義、硬件加速的基礎(chǔ)架構(gòu)

DOCA 簡化了 BlueField DPU 的編程和應(yīng)用程序開發(fā),并通過提供更高級別的抽象消除了障礙。通過提供運行時二進制文件和高級 API , DOCA 框架使您能夠?qū)W⒂趹?yīng)用程序代碼,而不是學(xué)習(xí)。

您可以選擇兩種開發(fā)路線:通過庫和服務(wù)或通過 SDK 和驅(qū)動程序。目前, DOCA 軟件棧包括 120 多個 DOCA API ,全球 2500 多名 DOCA 開發(fā)人員正在使用這些 API 。它們可通過 NGC Catalog 獲得。

關(guān)于作者

Scott Ciccone 于 2020 年作為 Cumulus Networks 收購的一部分加入后,目前擔(dān)任 NVIDIA 的產(chǎn)品營銷總監(jiān)。 Scott 在產(chǎn)品營銷和產(chǎn)品管理方面擁有 20 多年的經(jīng)驗,擅長在高增長環(huán)境下啟動新的業(yè)務(wù)線,包括 Cumulus Networks , Palo Alto Networks 、 Cisco 和 Sun Microsystems 。斯科特在羅切斯特理工學(xué)院獲得生物醫(yī)學(xué)計算學(xué)士學(xué)位,在巴布森學(xué)院獲得市場營銷工商管理碩士學(xué)位。

審核編輯:郭婷

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

    關(guān)注

    14

    文章

    5053

    瀏覽量

    103365
  • API
    API
    +關(guān)注

    關(guān)注

    2

    文章

    1507

    瀏覽量

    62218
  • SDK
    SDK
    +關(guān)注

    關(guān)注

    3

    文章

    1042

    瀏覽量

    46078
收藏 人收藏

    評論

    相關(guān)推薦

    適用于Oracle的ODBC驅(qū)動程序

    和 Linux 上符合 ODBC 標準的報告、分析、BI 和 ETL 工具訪問 Oracle 數(shù)據(jù)。我們的 ODBC 驅(qū)動程序完全支持標準 ODBC API 功能和數(shù)據(jù)類型,并支持從任何地方輕松
    的頭像 發(fā)表于 01-13 09:17 ?61次閱讀

    適用于Oracle的dbExpress驅(qū)動程序

    (包括社區(qū)版)快速訪問 Oracle macOS(32 位和 64 位)和 Linux(64 位)平臺。對于此服務(wù)器,dbExpress 將驅(qū)動程序作為實現(xiàn)通用 dbExpress 的獨立提供 用于
    的頭像 發(fā)表于 01-09 16:04 ?83次閱讀
    適用于Oracle的dbExpress<b class='flag-5'>驅(qū)動程序</b>

    AT32F403A_407固件驅(qū)動程序發(fā)行說明

    電子發(fā)燒友網(wǎng)站提供《AT32F403A_407固件驅(qū)動程序發(fā)行說明.zip》資料免費下載
    發(fā)表于 12-10 15:57 ?0次下載

    NVIDIA DOCA 2.9版本的亮點解析

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

    pcie設(shè)備驅(qū)動程序安裝步驟

    PCIe(Peripheral Component Interconnect Express)是一種高速串行計算機擴展總線標準,用于計算機內(nèi)部硬件組件之間的連接。安裝PCIe設(shè)備驅(qū)動程序是確保硬件
    的頭像 發(fā)表于 11-13 10:32 ?1101次閱讀

    NVIDIA DOCA-OFED的主要特性

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

    硬盤電機怎么驅(qū)動程序?它有什么典型特征?

    硬盤電機的驅(qū)動程序是硬盤中一個非常重要的組成部分,它負責(zé)控制硬盤電機的啟動、停止、轉(zhuǎn)速調(diào)節(jié)等操作。硬盤電機驅(qū)動程序的設(shè)計和實現(xiàn)涉及到電機控制理論、電子技術(shù)、計算機編程等多個領(lǐng)域的知識。 一、硬盤電機
    的頭像 發(fā)表于 10-22 11:10 ?442次閱讀

    Linux設(shè)備驅(qū)動程序分類有哪些

    Linux設(shè)備驅(qū)動程序是操作系統(tǒng)與硬件設(shè)備之間的橋梁,負責(zé)實現(xiàn)硬件設(shè)備與操作系統(tǒng)之間的通信和控制。Linux設(shè)備驅(qū)動程序的分類繁多,可以根據(jù)不同的標準進行分類。 按硬件類型分類 Linux設(shè)備
    的頭像 發(fā)表于 08-30 15:11 ?634次閱讀

    linux驅(qū)動程序如何加載進內(nèi)核

    ,需要了解Linux內(nèi)核的基本概念和API。以下是一些關(guān)鍵概念: 1.1 內(nèi)核模塊:Linux內(nèi)核模塊是一種動態(tài)加載和卸載的代碼,可以在不重新啟動系統(tǒng)的情況下加載和卸載。驅(qū)動程序通常以內(nèi)核模塊的形式實現(xiàn)。 1.2 設(shè)備模型:Linux內(nèi)核使用設(shè)備模型來管理設(shè)
    的頭像 發(fā)表于 08-30 15:02 ?532次閱讀

    linux驅(qū)動程序的編譯方法是什么

    Linux驅(qū)動程序的編譯方法主要包括兩種: 與內(nèi)核一起編譯 和 編譯成獨立的內(nèi)核模塊 。以下是對這兩種方法的介紹: 一、與內(nèi)核一起編譯 與內(nèi)核一起編譯意味著將驅(qū)動程序的源代碼直接集成到Linux內(nèi)核
    的頭像 發(fā)表于 08-30 14:46 ?691次閱讀

    linux驅(qū)動程序運行在什么空間

    Linux 驅(qū)動程序是操作系統(tǒng)的一部分,負責(zé)管理硬件設(shè)備與操作系統(tǒng)之間的交互。驅(qū)動程序運行在內(nèi)核空間(Kernel Space),這是操作系統(tǒng)的核心部分,與用戶空間(User Space)相對。內(nèi)核
    的頭像 發(fā)表于 08-30 14:37 ?467次閱讀

    IB Verbs和NVIDIA DOCA GPUNetIO性能測試

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

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

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

    怎么編寫Framebuffer驅(qū)動程序

    Framebuffer 驅(qū)動程序框架 分為上下兩層: fbmem.c:承上啟下 實現(xiàn)、注冊 file_operations 結(jié)構(gòu)體 把 APP 的調(diào)用向下轉(zhuǎn)發(fā)到具體的硬件驅(qū)動程序
    的頭像 發(fā)表于 03-22 09:13 ?587次閱讀
    怎么編寫Framebuffer<b class='flag-5'>驅(qū)動程序</b>

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

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