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

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

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

DPU軟件棧五層模型(二)典型軟件框架案例

中科馭數(shù)(北京)科技有限公司 ? 2022-06-13 15:50 ? 次閱讀

一、NVIDIA DOCA軟件框架

1)設(shè)計目的

NVIDIA BlueField DPU的核心目的是解決數(shù)據(jù)中心中基于CPU計算的基礎(chǔ)設(shè)施的算力問題,主要涉及網(wǎng)絡(luò)、存儲、安全及基礎(chǔ)設(shè)施管理這個幾個方面。而DOCA是為了將BlueField DPU提供的硬件能力做軟件抽象和封裝,以SDK Library的形式提供友好的可編程接口,提高應(yīng)用開發(fā)的效率。

2)技術(shù)細(xì)節(jié)

DOCA架構(gòu)如下圖所示,DOCA有三個模塊,分別是:

(1)DOCA drivers:是對DPU硬件資源的低層次封裝,其提供的low-level API是對硬件卸載能力的訪問,主要包含網(wǎng)絡(luò)卸載、安全卸載、存儲卸載等算力的訪問,同時支持DPDK, RDMA,Virtio-net(網(wǎng)絡(luò)虛擬化),Virtio-blk(存儲虛擬化),PCIe等通用能力。

(2)DOCA libs:是基于DOCA drivers為上層應(yīng)用封裝的high-level API,這些API是面向應(yīng)用層所需的功能,例如面向網(wǎng)絡(luò)應(yīng)用的Flow,Data Integrity, UPF(User Plane Function), VNF(Network Functions Virtualization);面向存儲應(yīng)用的SPDK;面向安全應(yīng)用的DPI(Deep Packet Inspection), Host introspection等。

(3)DOCA services:封裝了基礎(chǔ)設(shè)施的控制和管理功能,如DPU設(shè)備的管理,SDN(Software-Defined Network)的控制接口,存儲管理,Network Telemetry等。

pYYBAGKm0iyAML9dAAGXkY67n5Q280.png

圖DOCA軟件棧

3)功能分析

從縱向的功能角度來看,DOCA SDK提供了網(wǎng)絡(luò)加速、安全加速、存儲加速和基礎(chǔ)設(shè)施管理加速的功能,相關(guān)的技術(shù)細(xì)節(jié)如下:

(1)網(wǎng)絡(luò)加速SDK:支持ASAP2 (Accelerated Switching and Packet Processing) SDN、VirtIO、OVS (open virtual switching)、P4編程、RDMA。

(2)安全加速SDK:支持Inline encryption、DPI(Deep Packet Inspection)、TLS、IPSec。

(3)存儲加速SDK:支持SPDK、VirtIO、NVMe-oF、數(shù)據(jù)加解密和數(shù)據(jù)壓縮等。

(4)基礎(chǔ)設(shè)施管理加速SDK:支持DPU management、Traffic telemetry、Packet filtering。

二、Intel OneAPI軟件框架

1)設(shè)計目的

OneAPI設(shè)計的目的是通過實現(xiàn)一個跨平臺,開放的,標(biāo)準(zhǔn)的通用編程模型及接口來提高在異構(gòu)加速器架構(gòu)下的開發(fā)效率。OneAPI本身并不提供DPU設(shè)備,而是構(gòu)建一個軟件框架來整合業(yè)界現(xiàn)有的異構(gòu)計算設(shè)備11。

2)技術(shù)細(xì)節(jié)

OneAPI抽象出兩層APIs,分為L0 (Low-level) API和L1 (High-Level) API。其結(jié)構(gòu)如下圖所示。

pYYBAGKm0iyAFItpAAJosKmEWfo080.png

圖OneAPI軟件棧

L0 API: OneAPI的L0 API整合并封裝了業(yè)界流行的異構(gòu)計算設(shè)備(如GPU,AI,FPGA等)及其軟件框架(如CUDA,OpenCL),并提供統(tǒng)一的針對硬件資源訪問的low-level API。這樣,不同的硬件平臺對上層應(yīng)用開發(fā)來說是透明的,從而起到了跨平臺的作用。

L1 API:OneAPI的L1 API提供了一系列針對特定應(yīng)用場景的High-level API,這些API主要服務(wù)于機(jī)器學(xué)習(xí)、數(shù)據(jù)分析、并行計算、視頻處理等特定領(lǐng)域,有Deep Learning API, Data Science API, Data Analysis API,Multiple Thread API, Video Processing API等。

基于上述兩層的抽象和封裝,上層應(yīng)用程序可以利用L1 API進(jìn)行特定領(lǐng)域的數(shù)據(jù)處理加速,也可以直接訪問L0 API進(jìn)行編程來服務(wù)更加廣泛的場景。

三、中科馭數(shù)HADOS?軟件框架

馭數(shù)DPU的軟件框架是基于上述五層模型構(gòu)建的,整體架構(gòu)如下圖所示:

poYBAGKm0tKAAzORACM-uOwKVNw516.png

圖 馭數(shù)異構(gòu)計算系統(tǒng)架構(gòu)

DSA設(shè)備層集成了馭數(shù)自研DPU芯片加速卡設(shè)備,分別是針對數(shù)據(jù)計算、軟件定義網(wǎng)絡(luò)、軟件定義存儲以及安全相關(guān)的的硬件設(shè)備。這些硬件設(shè)備在物理上是由馭數(shù)DPU芯片、內(nèi)存、存儲、I/O通道和KPU指令集等共同構(gòu)成;DSA操作層是一個為支撐基于DPU設(shè)備開發(fā)的軟件操作平臺,即DPU操作平臺,該平臺提供了DPU資源訪問、調(diào)度、監(jiān)控和管理的功能,同時也提供了完備友好的開發(fā)工具庫;計算引擎層為針對數(shù)據(jù)計算應(yīng)用軟件封裝的一個通用的數(shù)據(jù)計算加速引擎,它基于DPU操作平臺提供的計算能力,實現(xiàn)了硬件卸載的算子及相應(yīng)算子的軟件優(yōu)化器,這些算子分為計算類算子、網(wǎng)絡(luò)類算子和存儲類算子;應(yīng)用服務(wù)層為使用馭數(shù)DPU進(jìn)行加速的數(shù)據(jù)處理平臺、網(wǎng)絡(luò)服務(wù)平臺和存儲服務(wù)平臺,如大數(shù)據(jù)領(lǐng)域的Spark,數(shù)據(jù)庫領(lǐng)域的PostgreSQL,機(jī)器學(xué)習(xí)領(lǐng)域的XGBoost,微服務(wù)架構(gòu)中負(fù)責(zé)遠(yuǎn)程通信的gRPC框架,Web服務(wù)平臺Nginx以及分布式存儲平臺Ceph等;業(yè)務(wù)開發(fā)層為馭數(shù)數(shù)據(jù)計算加速產(chǎn)品所服務(wù)的業(yè)務(wù)系統(tǒng),主要來自對計算、網(wǎng)絡(luò)、存儲性能敏感的領(lǐng)域,如金融計算、交易、數(shù)據(jù)分析、云服務(wù)等。在上述五層架構(gòu)中,DPU操作平臺與數(shù)據(jù)計算加速引擎共同構(gòu)建了馭數(shù)為支撐DPU異構(gòu)計算而打造的專用軟件框架,即敏捷異構(gòu)軟件開發(fā)平臺,Heterogenous Agile Developing & Operating System,簡稱“HADOS?”。

四、DOCA,OneAPI與HADOS比較分析

整體來看,這三款軟件框架的出發(fā)點是相似的,都是在異構(gòu)計算的架構(gòu)下提供一套通用且編程友好的軟件開發(fā)框架。它們在設(shè)計這套軟件框架時都采用了分層抽象的思路,目的是使各層職責(zé)清晰,對上層提供足夠簡單且功能完備的接口。

具體到功能實現(xiàn)上,它們都是在網(wǎng)絡(luò)、計算、存儲、安全這些范疇內(nèi)做了相應(yīng)的支持,不過由于它們待解決的問題及根本目的存在差異,所以在架構(gòu)設(shè)計和功能實現(xiàn)上的側(cè)重點有所不同。簡單來說,DOCA側(cè)重點是支持基于Blue Field DPU的數(shù)據(jù)中心基礎(chǔ)設(shè)施服務(wù)加速的場景;OneAPI側(cè)重點是構(gòu)建設(shè)備無關(guān)的資源訪問庫和編程接口;HADOS側(cè)重點是支持基于YusurDPU的網(wǎng)絡(luò)、計算、存儲服務(wù)加速的場景。

下表針對這三款軟件框架在設(shè)計目的、五層架構(gòu)模型及各自特點上做了詳細(xì)比較。

pYYBAGKm0uOAYVAHACvIG-wzwQE067.png

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

    關(guān)注

    0

    文章

    343

    瀏覽量

    24044
收藏 人收藏

    評論

    相關(guān)推薦

    芯片軟件全上陣 DPU“全家桶”來了!中科馭數(shù)成功舉辦2024產(chǎn)品發(fā)布會

    6月19日,中科馭數(shù)2024產(chǎn)品發(fā)布會在北京中關(guān)村展示中心正式舉辦。聚焦自研DPU核心技術(shù),中科馭數(shù)重磅發(fā)布最新一代DPU芯片K2 Pro、軟件開發(fā)平臺HADOS、以及一系列針對數(shù)據(jù)中心基礎(chǔ)設(shè)施
    的頭像 發(fā)表于 06-23 11:09 ?617次閱讀
    芯片<b class='flag-5'>軟件</b>全上陣 <b class='flag-5'>DPU</b>“全家桶”來了!中科馭數(shù)成功舉辦2024產(chǎn)品發(fā)布會

    NVIDIA宣布推出基于Omniverse Cloud API構(gòu)建的全新軟件框架

    NVIDIA 在 GTC 大會上宣布推出基于 Omniverse Cloud API(應(yīng)用編程接口)構(gòu)建的全新軟件框架。
    的頭像 發(fā)表于 03-25 09:09 ?415次閱讀

    谷歌模型框架是什么軟件?谷歌模型框架怎么用?

    谷歌模型框架通常指的是谷歌開發(fā)的用于機(jī)器學(xué)習(xí)和人工智能的軟件框架,其中最著名的是TensorFlow。TensorFlow是一個開源的機(jī)器學(xué)習(xí)框架
    的頭像 發(fā)表于 03-01 16:25 ?643次閱讀

    谷歌模型訓(xùn)練軟件有哪些?谷歌模型訓(xùn)練軟件哪個好?

    谷歌在模型訓(xùn)練方面提供了一些強(qiáng)大的軟件工具和平臺。以下是幾個常用的谷歌模型訓(xùn)練軟件及其特點。
    的頭像 發(fā)表于 03-01 16:24 ?675次閱讀

    谷歌模型軟件有哪些功能

    谷歌模型軟件通常指的是谷歌推出的一系列人工智能模型軟件工具,其中最具代表性的是Google Gemini。Google Gemini是谷歌DeepMind團(tuán)隊開發(fā)的一款大型語言
    的頭像 發(fā)表于 03-01 16:20 ?459次閱讀

    谷歌模型合成軟件有哪些

    谷歌模型合成軟件通常指的是谷歌提供的用于創(chuàng)建、修改和共享3D模型軟件。目前,谷歌推出的模型合成軟件
    的頭像 發(fā)表于 02-29 18:20 ?1203次閱讀

    谷歌模型軟件有哪些好用的

    谷歌模型軟件的好用程度可能因個人需求和技能水平而異,但以下是一些廣受歡迎的谷歌模型軟件,它們在各自的領(lǐng)域內(nèi)有著出色的表現(xiàn)。
    的頭像 發(fā)表于 02-29 18:17 ?865次閱讀

    谷歌模型框架是什么?有哪些功能和應(yīng)用?

    谷歌模型框架(Google Model Framework)并不是一個特定的框架,而是指谷歌開發(fā)的一系列軟件框架,用于支持機(jī)器學(xué)習(xí)和人工智能
    的頭像 發(fā)表于 02-29 18:11 ?1223次閱讀

    虛擬化軟件有哪些防御措施

    虛擬化軟件是一種在物理服務(wù)器上運行多個虛擬機(jī)的技術(shù),可以提高服務(wù)器資源的利用率和靈活性。然而,虛擬化軟件也帶來了新的安全風(fēng)險,因此需要采取一系列的防御措施來保護(hù)虛擬化環(huán)境的安全。下
    的頭像 發(fā)表于 01-25 11:27 ?572次閱讀

    《數(shù)據(jù)處理器:DPU編程入門》DPU計算入門書籍測評

    。 從開發(fā)者角度來說,英偉達(dá)技術(shù)更偏向于軟件開發(fā)應(yīng)用,通用計算開發(fā)的模式。而其他FPGA-DPU技術(shù)需要掌握相當(dāng)?shù)腇PGA能力,相較之下,F(xiàn)PGA的開發(fā)難度和成本都要高出不少。 DPU
    發(fā)表于 12-24 10:54

    《數(shù)據(jù)處理器:DPU編程入門》+初步熟悉這本書的結(jié)構(gòu)和主要內(nèi)容

    InfiniBand 網(wǎng)絡(luò)連接端口:這些端口提供高速網(wǎng)絡(luò)功能。 軟件完全向后兼容:BlueField-3 DPU 與 NVIDIA DOCA? 軟件框架兼容,確保與現(xiàn)有系統(tǒng)無縫集成。
    發(fā)表于 12-08 18:03

    什么是DPU?

    DPU則進(jìn)行數(shù)據(jù)處理。” 什么是DPU? 數(shù)據(jù)處理器 基于行業(yè)標(biāo)準(zhǔn),高性能及軟件可編程的多核CPU 高性能網(wǎng)絡(luò)接口 靈活、可編程的加速引擎 DPU有什么與眾不同之處?
    發(fā)表于 11-03 10:55

    CAN協(xié)議與LIN協(xié)議介紹

    CAN協(xié)議 汽車CAN協(xié)議是一種軟件組件,用于實現(xiàn)汽車電子系統(tǒng)中的CAN總線通信功能。它包含了一系列的功能軟件,用于處理CAN總線的物理
    的頭像 發(fā)表于 10-27 16:16 ?2573次閱讀
    CAN協(xié)議<b class='flag-5'>棧</b>與LIN協(xié)議<b class='flag-5'>棧</b>介紹

    【書籍評測活動NO.23】數(shù)據(jù)處理器:DPU編程入門

    式計算公司,其擁有的數(shù)據(jù)中心規(guī)模產(chǎn)品服務(wù)正在重塑行業(yè)。 專家推薦 這是一本由淺入深介紹NVIDIA BlueField系列DPU及NVIDIA DOCA軟件框架的入門書籍,內(nèi)容覆蓋了
    發(fā)表于 10-24 15:21

    網(wǎng)絡(luò)模型的七結(jié)構(gòu)和結(jié)構(gòu)

    模型 這個 ISO 網(wǎng)絡(luò)模型各層的名字、主要功能對應(yīng)的典型設(shè)備和傳輸單位如下圖: 這個七
    的頭像 發(fā)表于 10-08 16:39 ?1561次閱讀
    網(wǎng)絡(luò)<b class='flag-5'>模型</b>的七<b class='flag-5'>層</b>結(jié)構(gòu)和<b class='flag-5'>五</b><b class='flag-5'>層</b>結(jié)構(gòu)