99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

DPU軟件棧五層模型系列(一)DPU異構(gòu)計算架構(gòu)五層開發(fā)模型

中科馭數(shù)(北京)科技有限公司 ? 2022-06-06 18:14 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一般說來,異構(gòu)計算的核心目的是解決特定應(yīng)用場景下算力不足的問題,并且大幅度提升整體系統(tǒng)的計算性能。在整體架構(gòu)上,它的分層邏輯從應(yīng)用場景出發(fā),通過上層的需求來定義下層的功能,而每一層是對特定功能的抽象與封裝。在定義每一層功能時,要達(dá)到以下幾個目標(biāo):

各層職責(zé)單一

層間邊界清晰

層內(nèi)功能實(shí)現(xiàn)獨(dú)立

靈活易擴(kuò)展

基于上述目標(biāo),將一個異構(gòu)計算的系統(tǒng)抽象為五層(如下圖所示),自下而上分別是:1)DSA設(shè)備層(DSA Device Layer),2)DSA操作層 (DSA Operating Layer),3)計算引擎層(Scheduling Operating Layer),4)應(yīng)用服務(wù)層(Application Service Layer)和5)業(yè)務(wù)開發(fā)層 (Business Development Layer),詳述如下。

pYYBAGKdni-AKbWXABHPTwvC8VU475.png圖異構(gòu)計算系統(tǒng)抽象模型

一、DSA設(shè)備層

DSA設(shè)備層代表的是執(zhí)行異構(gòu)計算的DSA處理器以及集成了該處理器的硬件設(shè)備,例如,以DPU或GPU為處理器的異構(gòu)計算設(shè)備。異構(gòu)計算設(shè)備需要具備以下兩個核心能力:1)提供支持專用計算操作的指令集(Instruction Set),2)CPU或其他DSA設(shè)備的標(biāo)準(zhǔn)通信接口,如PCIe數(shù)據(jù)傳輸標(biāo)準(zhǔn)。

二、DSA操作層

DSA操作層是對DSA處理器的指令集的管理以及基礎(chǔ)開發(fā)平臺的整合,該層完成了對硬件資源的抽象,從而使上層軟件對底層設(shè)備透明;DSA操作層是對DSA設(shè)備層計算設(shè)備的抽象和計算資源的封裝,是軟件與硬件、邏輯與物理的邊界。它基于如DPU芯片等DSA處理器提供的指令集,以更加抽象和編程友好的方式對上層提供了異構(gòu)計算開發(fā)和訪問的軟件接口、以及設(shè)備監(jiān)控管理的接口。該層內(nèi)部有四個必要的模塊,分別是設(shè)備驅(qū)動器,指令集管理器,資源訪問接口,開發(fā)和管理平臺。

  • 設(shè)備驅(qū)動器:設(shè)備驅(qū)動器是硬件設(shè)備的軟件抽象,它基于操作系統(tǒng)標(biāo)準(zhǔn)的驅(qū)動框架及PCIe協(xié)議,實(shí)現(xiàn)了對計算設(shè)備的物理訪問,主要包括設(shè)備處理器的指令執(zhí)行和設(shè)備存儲的讀寫。
  • 指令集管理器:指令管理器的作用是對計算設(shè)備所提供的指令集進(jìn)行統(tǒng)一管理,通過對指令集的封裝及組合,提供更加友好的編程接口。
  • 資源訪問接口:基于設(shè)備驅(qū)動器和指令集管理器的功能,該模塊完成對整個計算資源訪問的抽象和封裝,它以編程接口的方式對上層提供資源訪問入口,服務(wù)于上層計算邏輯和控制邏輯的執(zhí)行。
  • 開發(fā)和管理平臺:除了上述運(yùn)行時所需的能力外,還需要針對開發(fā)人員提供友好的編程工具,如指令集編譯工具、監(jiān)控管理工具、日志工具、異構(gòu)計算卡模擬器等。

三、計算引擎層

計算引擎層是對計算邏輯的封裝,為上層提供通用的計算能力。與DSA操作層的對計算資源封裝不同,計算引擎層是對計算邏輯的封裝,它基于DSA操作層提供的資源訪問接口,根據(jù)上層應(yīng)用層軟件對算力的需求,提供了可復(fù)用的算子集合及執(zhí)行接口。

算子抽象

算子定義為實(shí)現(xiàn)某一特定功能或算法的函數(shù)或獨(dú)立的服務(wù),它是對計算邏輯的抽象。例如,根據(jù)指定條件對數(shù)據(jù)進(jìn)行過濾的函數(shù)可以是一個算子,稱它為“過濾算子”。在標(biāo)準(zhǔn)的數(shù)據(jù)庫軟件中,它的算子有Scan, Join, GroupBy等,而在網(wǎng)絡(luò)處理軟件中,特有的算子會是以BSD Socket,NVMe等標(biāo)準(zhǔn)服務(wù)的形式呈現(xiàn)。由于異構(gòu)計算的“異構(gòu)”特性,每個算子在不同設(shè)備上的具體實(shí)現(xiàn)有所不同,所以針對每一個支持的算子,都要有多種不同設(shè)備平臺上的實(shí)現(xiàn),如ScanOnDPU、ScanOnGPU。

計算優(yōu)化器

異構(gòu)計算追求的是計算性能的提升,相應(yīng)的需要一個計算優(yōu)化器來對上層的計算請求做優(yōu)化。它的基本策略是根據(jù)應(yīng)用場景、上下文、數(shù)據(jù)規(guī)模等因素來動態(tài)的選擇最優(yōu)的算子實(shí)現(xiàn)進(jìn)行計算。

四、應(yīng)用服務(wù)層

應(yīng)用服務(wù)層是數(shù)據(jù)處理的應(yīng)用服務(wù)軟件,也是算力的需求側(cè)。應(yīng)用服務(wù)層代表具有通用功能的軟件系統(tǒng),這些軟件系統(tǒng)可以利用計算引擎提供的算子進(jìn)行異構(gòu)計算,從而達(dá)到計算性能提升的目的。常見的應(yīng)用層軟件系統(tǒng)有分布式計算領(lǐng)域的Spark, Flink, Hadoop;數(shù)據(jù)庫領(lǐng)域的PostgreSQL, MySQL;分布式網(wǎng)絡(luò)中的gPRC,Network Gateway,Nginx;以及存儲服務(wù)中的Ceph等等,基本上通用服務(wù)型的系統(tǒng)都屬于該層的范疇。

在實(shí)際開發(fā)中,針對應(yīng)用服務(wù)層中的軟件,需要解決以下幾個關(guān)鍵問題:

  • 性能瓶頸的識別:通常應(yīng)用軟件的性能瓶頸會在高并發(fā)、大吞吐的情況下出現(xiàn),這些瓶頸一般源于CPU計算資源的競爭、CPU計算性能的不足、網(wǎng)絡(luò)傳輸?shù)难舆t以及磁盤I/O的延遲等。識別出應(yīng)用軟件的性能瓶頸是算力卸載的第一步。
  • 異構(gòu)計算的有效性邊界:在定位到軟件的性能瓶頸后,需要從中識別出哪些是可以通過異構(gòu)計算來解決的。通常,CPU成為瓶頸的原因會有兩類,一類是算力的問題,另一類是算法的問題。針對算力的問題,可以通過異構(gòu)計算來解決,而算法的問題則不然。
  • 算子的高效調(diào)用:算子是異構(gòu)計算的執(zhí)行單元,只有把算子集成到應(yīng)用軟件的執(zhí)行路徑中,算力卸載才算完成??紤]到性能的優(yōu)化,還需要根據(jù)實(shí)際情況優(yōu)化算子的執(zhí)行策略,例如,數(shù)據(jù)在主機(jī)端與設(shè)備端內(nèi)存之間的數(shù)據(jù)拷貝策略、各算子執(zhí)行序列的編排策略等等。
  • 應(yīng)用軟件的向前兼容性:在整合應(yīng)用軟件與異構(gòu)計算的算子時,要確保應(yīng)用軟件的向前兼容性,以保證應(yīng)用服務(wù)層的軟件迭代對正在運(yùn)行的上層業(yè)務(wù)系統(tǒng)是透明的,從而提高整個架構(gòu)的穩(wěn)定性與可維護(hù)性。

五、業(yè)務(wù)開發(fā)層

業(yè)務(wù)開發(fā)層是在某特定領(lǐng)域的業(yè)務(wù)系統(tǒng)。業(yè)務(wù)開發(fā)層是最貼近實(shí)際業(yè)務(wù)場景的軟件系統(tǒng),通常它是針對某個特定行業(yè)的具體業(yè)務(wù)需求定制的軟件系統(tǒng),如金融行業(yè)的交易系統(tǒng),互聯(lián)網(wǎng)行業(yè)的數(shù)據(jù)分析系統(tǒng)等等。整個異構(gòu)計算架構(gòu)本質(zhì)上就是解決業(yè)務(wù)層的性能瓶頸問題,所以在實(shí)際開發(fā)過程中,應(yīng)該從業(yè)務(wù)端出發(fā),尋找要解決的根本問題,然后驅(qū)動整個異構(gòu)系統(tǒng)的構(gòu)建。同時,整體架構(gòu)也要保證底層構(gòu)建對具體的業(yè)務(wù)系統(tǒng)完全透明,達(dá)到對各行業(yè)業(yè)務(wù)軟件系統(tǒng)的無縫支撐和業(yè)務(wù)邏輯開發(fā)的隔離。

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

    關(guān)注

    0

    文章

    393

    瀏覽量

    24943
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    模型推理顯存和計算量估計方法研究

    隨著人工智能技術(shù)的飛速發(fā)展,深度學(xué)習(xí)大模型在各個領(lǐng)域得到了廣泛應(yīng)用。然而,大模型的推理過程對顯存和計算資源的需求較高,給實(shí)際應(yīng)用帶來了挑戰(zhàn)。為了解決這問題,本文將探討大
    發(fā)表于 07-03 19:43

    如何釋放異構(gòu)計算的潛能?Imagination與Baya Systems的系統(tǒng)架構(gòu)實(shí)踐啟示

    報告作者:PallaviSharma,Imaginaiton產(chǎn)品管理總監(jiān)Dr.EricNorige,BayaSystems首席軟件架構(gòu)師關(guān)注Imagination公眾號,消息框發(fā)送【異構(gòu)計算】,即可
    的頭像 發(fā)表于 06-13 08:33 ?396次閱讀
    如何釋放<b class='flag-5'>異構(gòu)計算</b>的潛能?Imagination與Baya Systems的系統(tǒng)<b class='flag-5'>架構(gòu)</b>實(shí)踐啟示

    能效提升3倍!異構(gòu)計算架構(gòu)讓AI跑得更快更省電

    。它是應(yīng)對復(fù)雜計算需求的關(guān)鍵技術(shù)之。 ? 異構(gòu)計算架構(gòu)的核心優(yōu)勢 ? 異構(gòu)計算架構(gòu)的核心要素主
    的頭像 發(fā)表于 05-25 01:55 ?2804次閱讀

    RAKsmart智能算力架構(gòu)異構(gòu)計算+低時延網(wǎng)絡(luò)驅(qū)動企業(yè)AI訓(xùn)練范式升級

    在AI大模型參數(shù)量突破萬億、多模態(tài)應(yīng)用爆發(fā)的今天,企業(yè)AI訓(xùn)練正面臨算力效率與成本的雙重挑戰(zhàn)。RAKsmart推出的智能算力架構(gòu),以異構(gòu)計算資源池化與超低時延網(wǎng)絡(luò)為核心,重構(gòu)AI訓(xùn)練基礎(chǔ)設(shè)施,助力企業(yè)實(shí)現(xiàn)訓(xùn)練速度提升、硬件成本下
    的頭像 發(fā)表于 04-17 09:29 ?324次閱讀

    請問使用2022.2時是否可以讀取模型OpenVINO??

    使用 2020.3 時,使用 net.layers 和 layers.blob 讀取模型OpenVINO?。 OpenVINO?自 2021.2 OpenVINO?起,使用 2022.2 作為 net.layers 和 layers.blob 時無法讀取
    發(fā)表于 03-06 06:37

    中科馭數(shù)DPU助力大模型訓(xùn)練和推理

    隨著深度學(xué)習(xí)技術(shù)的快速發(fā)展,大模型(如GPT、BERT等)在自然語言處理、計算機(jī)視覺等領(lǐng)域取得了顯著成果。然而,大模型的參數(shù)量和計算量極其龐大,傳統(tǒng)的硬件
    的頭像 發(fā)表于 02-19 09:48 ?697次閱讀
    中科馭數(shù)<b class='flag-5'>DPU</b>助力大<b class='flag-5'>模型</b>訓(xùn)練和推理

    異構(gòu)計算的概念、核心、優(yōu)勢、挑戰(zhàn)及考慮因素

    異構(gòu)計算就像是支由“多才多藝”處理器組成的團(tuán)隊,每個成員都有自己的強(qiáng)項和責(zé)任。 ? 什么是異構(gòu)計算????? “異構(gòu)計算”指的是在同
    的頭像 發(fā)表于 01-13 11:43 ?1005次閱讀

    文看懂】什么是異構(gòu)計算

    隨著人工智能、深度學(xué)習(xí)、大數(shù)據(jù)處理等技術(shù)的快速發(fā)展,計算需求的復(fù)雜性不斷提升。傳統(tǒng)的單一計算架構(gòu)已難以滿足高效處理復(fù)雜任務(wù)的要求,異構(gòu)計算因此應(yīng)運(yùn)而生,成為現(xiàn)代
    的頭像 發(fā)表于 12-04 01:06 ?2793次閱讀
    【<b class='flag-5'>一</b>文看懂】什么是<b class='flag-5'>異構(gòu)計算</b>?

    如何通過OSI七模型優(yōu)化網(wǎng)絡(luò)性能

    OSI(Open Systems Interconnection)七模型種標(biāo)準(zhǔn)的網(wǎng)絡(luò)分層模型,將網(wǎng)絡(luò)功能分為七個不同的層次,每個層次都有獨(dú)立的功能和協(xié)議,可以獨(dú)立地實(shí)現(xiàn)和升級。通
    的頭像 發(fā)表于 11-24 11:14 ?1019次閱讀

    OSI七模型中各層的協(xié)議 OSI七模型的優(yōu)勢與不足

    OSI七模型中各層的協(xié)議 OSI(Open Systems Interconnection)七模型個用于描述網(wǎng)絡(luò)通信功能的分層
    的頭像 發(fā)表于 11-24 10:54 ?1275次閱讀

    如何理解OSI七模型 OSI七模型在網(wǎng)絡(luò)中的應(yīng)用

    ,旨在幫助不同計算機(jī)系統(tǒng)之間實(shí)現(xiàn)互操作性。OSI模型將網(wǎng)絡(luò)通信過程劃分為七個層次,每一層都有其特定的功能和協(xié)議。以下是對OSI七模型的簡要
    的頭像 發(fā)表于 11-24 10:48 ?1138次閱讀

    OSI七模型的每一層功能

    開放系統(tǒng)互聯(lián)(OSI)模型個概念性框架,用于標(biāo)準(zhǔn)化網(wǎng)絡(luò)通信過程,以便不同的計算機(jī)系統(tǒng)和網(wǎng)絡(luò)能夠相互通信。OSI模型分為七,每
    的頭像 發(fā)表于 11-24 10:46 ?1615次閱讀

    OSI七模型詳解 OSI七模型與TCP/IP模型比較

    OSI(Open System Interconnect)七模型種將計算機(jī)網(wǎng)絡(luò)通信協(xié)議劃分為七個不同層次的標(biāo)準(zhǔn)化框架,每一層都負(fù)責(zé)不同
    的頭像 發(fā)表于 11-24 10:44 ?1208次閱讀

    IaaS+on+DPU(IoD)+下代高性能算力底座技術(shù)白皮書

    ,在其上掛載了各種計算、存儲資源的節(jié)點(diǎn),對于系統(tǒng)的資源彈性、運(yùn)行效率、性能都大有益處。但是這種使用方式的變化,需要對現(xiàn)有云計算架構(gòu)進(jìn)行定程度的變革,才能充分發(fā)揮出
    發(fā)表于 07-24 15:32

    AvaotaA1全志T527開發(fā)板AMP異構(gòu)計算簡介

    Avaota SBC 的部分平臺內(nèi)具有小核心 CPU,與大核心起組成了異構(gòu)計算的功能。 在異構(gòu)多處理系統(tǒng)中,主核心和輔助核心的存在旨在共同協(xié)作,以實(shí)現(xiàn)更高效的任務(wù)處理。這種協(xié)作需要系統(tǒng)采取
    發(fā)表于 07-24 09:54