NVIDIA DOCA 軟件框架包括編程 NVIDIA BlueField 數據處理器 ( DPU )并提供一致的體驗,無論開發環境如何。 NVIDIA 提供以下資源:
開發人員計劃
SDK 管理器支持
工具匯編:
編譯器
基準測試
參考應用程序
使用案例
NVIDIA 通過為開發人員提供 DOCA SDK 和用于開箱即用部署的 DOCA 運行時軟件來提供堆棧。
DOCA 驅動程序還是 DOCA 庫?
DOCA 驅動程序和 DOCA 庫是開發人員、 IT 安全和運營團隊以及 IT 管理員的關鍵部分。它們用于為 DPU 開發和部署軟件定義和硬件加速的應用程序。然而,我有時會收到關于正確使用的問題。
為了確保沒有混淆,并確定哪種可能最適合您的開發需求,我寫了這篇文章來討論何時使用哪種。
表 1 DOCA 驅動程序與 DOCA 庫
表 1 比較了驅動程序和庫,并強調了各自的優缺點。本質上, DOCA 驅動程序提供了更大的定制空間,而 DOCA 庫的設計旨在以更低的編碼復雜性提供最佳的每個用例性能和擴展。
DOCA 庫
首先, DOCA 庫是針對特定用例優化的高級抽象 API 。庫可以通過更快的開發時間和上市時間來實現優異的性能。它們還包括各種指南和示例應用程序,這些應用程序在用于開發時比 DOCA 驅動程序的學習曲線更短。
NVIDIA 庫已提前加速。它們使您能夠快速構建各種應用程序,并顯著提高性能,因為已經為指定用例創建和調整了邏輯。它們還確保了多代兼容性,這在使用 DOCA 驅動程序時是無法保證的。
這些庫旨在解決特定的用例,如防火墻、網關或存儲控制器。它們使用 PMD 和 DPDK ,并包含 DPDK 或驅動程序級別不存在的其他功能和邏輯。
例如,如果使用 RegEx 識別用于深度數據包檢查( DPI )的復雜字符串模式, DOCA DPI 庫包括預處理(數據包頭解析)和后處理例程,以便更容易使用 RegEx 加速器對網絡數據包執行操作。 DPDK RegEx API 不包含任何這些內容。 DOCA DPI 庫 API 是抽象的,更易于開發數據包檢查例程,因為不需要理解邏輯。
DOCA 庫允許您選擇具有內置硬件加速的首選 API 。 DOCA 1.3 的當前版本包括 120 多個 DOCA API :
零信任安全框架
遙測加速服務
流式服務實現實時可見性
這些服務可通過 NGC Catalog 獲得,并可在幾分鐘內部署到 BlueField DPU 上。
這些庫的價值是通過運行時環境、 DOCA 服務和一組擴展的文檔來實現的。一般的圖書館用戶不會開發應用程序,而是利用 NVIDIA 或第三方提供的現有應用程序和服務。
DOCA 服務是由多個項目組成的容器化驅動程序和庫,可以作為服務運行以提供特定功能。每個服務都提供不同的功能,例如 DOCA 遙測 API ,它可以在幾分鐘內從 NGC 目錄中提取。它提供了一種快速方便的方法來收集用戶定義的數據并將其傳輸到 DOCA 遙測服務( DTS )。
此外, API 還提供了幾個內置輸出以方便用戶,包括將數據直接保存到存儲器、 NetFlow 、 Fluent 位轉發和 Prometheus 端點。
這些庫中的每一個都共享對象,并且除了它們各自使用 PMD 驅動程序之外,沒有以任何方式綁定。類似地,每個都有一個公共基礎設施,每個都有自己的 文檔和程序員指南 。
DOCA 驅動程序和 DOCA SDK
雖然庫消除了低級編程,但它們可能不支持您正在尋找的所有特性和功能,因此 NVIDIA 提供了 DOCA 驅動程序。 DOCA 驅動程序是基于開源的,如果您正在開發自己的解決方案或必須創建獨特的解決方案,則可以提供更大的靈活性。
NVIDIA 驅動程序是為開發人員設計的,通過 DOCA SDK 提供。 SDK 包括創建和構建應用程序所需的所有組件,包括參考應用程序源、開發工具、文檔和 NVIDIA SDK 管理器。 SDK 管理器支持快速部署開發環境,還可以將映像閃存并安裝到本地 DPU 。
開發人員容器支持在任何地方開發 DOCA 加速的應用程序。您不必在 DPU 上的 Arm 處理器上執行此操作。在具有物理 DPU 的主機上,可以在開發人員容器中執行此操作,該容器模擬 Arm 處理器。 NVIDIA 提供了詳細的文檔、示例和 API 兼容性。
DOCA SDK 是利用 DOCA 庫和驅動程序并創建獨特的個性化軟件以滿足應用程序開發需求的最有效方法。
DOCA 運行時也可用于驗證和測試應用程序。
DOCA 運行時
如果您尚未準備好或無法將應用程序移植到 Arm 體系結構, NVIDIA 將為 x86 提供 DOCA 運行時。在這種情況下, gRPC 客戶端在 DPU 上運行,并與 x86 運行時建立通信通道。應用程序可以訪問 DPU 運行時組件,您不必編譯任何 Arm 代碼。
軟件定義、硬件加速的基礎架構
DOCA 簡化了 BlueField DPU 的編程和應用程序開發,并通過提供更高級別的抽象消除了障礙。通過提供運行時二進制文件和高級 API , DOCA 框架使您能夠專注于應用程序代碼,而不是學習。
您可以選擇兩種開發路線:通過庫和服務或通過 SDK 和驅動程序。目前, DOCA 軟件棧包括 120 多個 DOCA API ,全球 2500 多名 DOCA 開發人員正在使用這些 API 。它們可通過 NGC Catalog 獲得。
關于作者
Scott Ciccone 于 2020 年作為 Cumulus Networks 收購的一部分加入后,目前擔任 NVIDIA 的產品營銷總監。 Scott 在產品營銷和產品管理方面擁有 20 多年的經驗,擅長在高增長環境下啟動新的業務線,包括 Cumulus Networks , Palo Alto Networks 、 Cisco 和 Sun Microsystems 。斯科特在羅切斯特理工學院獲得生物醫學計算學士學位,在巴布森學院獲得市場營銷工商管理碩士學位。
審核編輯:郭婷
-
NVIDIA
+關注
關注
14文章
5059瀏覽量
103413 -
API
+關注
關注
2文章
1508瀏覽量
62229 -
SDK
+關注
關注
3文章
1044瀏覽量
46094
發布評論請先 登錄
相關推薦
評論