1.什么是 DPU
DPU 的英文全稱(chēng)叫做 Data Processing Unit 即數(shù)據(jù)處理器,屬于高性能可編程的多核處理器蚂踊。DPU 是 SoC(System on Chip)系統(tǒng)級(jí)芯片约谈,具有專(zhuān)用目標(biāo)的集成電路,包括完整系統(tǒng)并嵌入軟件的全部?jī)?nèi)容犁钟。
SoC 的特點(diǎn):
① 硬件規(guī)模龐大棱诱,通常基于 IP 設(shè)計(jì)模式涝动。
② 軟件比重大迈勋,需要進(jìn)行軟硬件協(xié)同設(shè)計(jì)。
DPU 是在 CPU醋粟、GPU 之后數(shù)據(jù)中心場(chǎng)景中的第三顆重要的算力芯片靡菇,為云平臺(tái)等需要高帶寬、低延遲米愿、數(shù)據(jù)密集的計(jì)算場(chǎng)景提供計(jì)算能力厦凤。
2.DPU 的產(chǎn)生背景
計(jì)算機(jī)最初誕生的時(shí)候采用了馮諾依曼架構(gòu),以計(jì)算和存儲(chǔ)為核心的架構(gòu)育苟, CPU 作為處理器單元負(fù)責(zé)完成各種算術(shù)和邏輯計(jì)算较鼓,而內(nèi)存和硬盤(pán)負(fù)責(zé)存儲(chǔ)數(shù)據(jù),并與 CPU 交互违柏。
由于游戲博烂、3D 設(shè)計(jì)等多媒體圖形軟件的高速發(fā)展拓哺,計(jì)算機(jī)要處理的工作量越來(lái)越大,也越來(lái)越復(fù)雜脖母。因此 CPU 忙不過(guò)來(lái)士鸥,就有了專(zhuān)門(mén)處理圖像和圖形相關(guān)運(yùn)算的 GPU(Graphics Processing Unit)圖形處理器。
問(wèn)題:DPU 存在意義是啥谆级,該問(wèn)題的實(shí)質(zhì)是 DPU 為 CPU 分擔(dān)了哪些工作烤礁?
答:DPU(Data Processing Unit )數(shù)據(jù)處理器是一個(gè)緊密?chē)@數(shù)據(jù)中心的概念,即主要用于云計(jì)算肥照、數(shù)據(jù)中心這種大規(guī)模算力場(chǎng)景脚仔,可以提升算力基礎(chǔ)設(shè)施的效率、減少資源消耗舆绎,達(dá)到降低成本的目的鲤脏。因此 DPU 從四方面分擔(dān) CPU 的工作,分別是網(wǎng)絡(luò)吕朵、存儲(chǔ)猎醇、虛擬化和安全。
3.CPU努溃、GPU 和 DPU 的區(qū)別
CPU 用于通用計(jì)算硫嘶,GPU 用于加速計(jì)算,而 DPU 則進(jìn)行數(shù)據(jù)處理梧税。
DPU 和 CPU最大的區(qū)別是沦疾,CPU 擅長(zhǎng)一般的計(jì)算任務(wù),而 DPU 更擅長(zhǎng)基礎(chǔ)層應(yīng)用任務(wù)第队,比如網(wǎng)絡(luò)協(xié)議處理哮塞、交換路由計(jì)算、加密解密凳谦、數(shù)據(jù)壓縮等忆畅。
3.1 CPU 初識(shí)
CPU 主要包括計(jì)算單元 ALU( Arithmetic and Logic Unit)晾蜘、控制單元 CU(Control Unit)邻眷、存儲(chǔ)單元(CPU 片內(nèi)緩存眠屎、寄存器組剔交、高速緩存器Cache),及其它們之間通訊的數(shù)據(jù)改衩、控制及狀態(tài)的總線岖常。相對(duì)于控制單元和存儲(chǔ)單元,CPU 的計(jì)算單元在整個(gè)結(jié)構(gòu)中占比較少葫督,因此相對(duì)于大規(guī)模并行計(jì)算能力竭鞍,CPU 更擅長(zhǎng)于邏輯控制板惑、串行運(yùn)算。
- 計(jì)算單元:主要負(fù)責(zé)算術(shù)和邏輯運(yùn)算偎快》氤耍控制單元對(duì)運(yùn)算器下達(dá)操作命令,即運(yùn)算單元所進(jìn)行的全部操作都是由控制單元發(fā)出的控制信號(hào)來(lái)指揮的晒夹。
- 控制單元:整個(gè) CPU 的指揮控制中心裆馒,由指令寄存器 IR (Instruction Register)、指令譯碼器 ID(Instruction Decoder)和操作控制器 OC (Operation Controller)等構(gòu)成丐怯,主要是對(duì)指令進(jìn)行譯碼喷好,并且發(fā)出為完成每條指令所要執(zhí)行的各個(gè)操作的控制信號(hào)。
- 存儲(chǔ)單元:主要包含 CPU 片內(nèi)緩存和寄存器組读跷,是 CPU 中暫時(shí)存放數(shù)據(jù)的地方梗搅,里面保存著那些等待處理或者已經(jīng)處理過(guò)的數(shù)據(jù)。CPU 訪問(wèn)寄存器所用的時(shí)間要比訪問(wèn)內(nèi)存的時(shí)間短效览,即采用寄存器可以減少 CPU 訪問(wèn)內(nèi)存的次數(shù)提高工作速度无切。
如下所示,以個(gè)人電腦的 CPU 為例丐枉,CPU 與內(nèi)存 RAM订雾、硬盤(pán)驅(qū)動(dòng)器和 NIC 網(wǎng)絡(luò)接口控制器相連。添加 SSD 可以更快訪問(wèn)內(nèi)存矛洞,添加 GPU 可以更好處理圖形/視頻洼哎。
3.2 GPU 初識(shí)
GPU 擁有一個(gè)由數(shù)以千計(jì)的更小、更高效的核心組成的大規(guī)模并行計(jì)算架構(gòu)沼本,而 CPU 專(zhuān)為順序串行處理而優(yōu)化的幾個(gè)核心組成噩峦。
當(dāng)涉及算術(shù)運(yùn)算和邏輯運(yùn)算等常規(guī)計(jì)算時(shí),通常是 CPU 更快抽兆。然而當(dāng)涉及到大型矩陣乘法和并行算法時(shí)识补,GPU 遠(yuǎn)遠(yuǎn)快于 CPU。GPU 擁有數(shù)千個(gè)內(nèi)核并行進(jìn)行運(yùn)算辫红,雖然這些內(nèi)核的時(shí)鐘速度較低或內(nèi)核較弱凭涂,但在并行計(jì)算中效率很高并且每個(gè)核心都有獨(dú)立的 ALU。GPU 需要協(xié)同 CPU 一起工作贴妻,不能單獨(dú)使用切油。
3.3 DPU 初識(shí)
DPU(Data Processing Unit)數(shù)據(jù)處理單元是面向數(shù)據(jù)中心的專(zhuān)用處理器。隨著數(shù)據(jù)中心建設(shè)名惩、網(wǎng)絡(luò)帶寬和數(shù)據(jù)量急劇增長(zhǎng)澎胡,由于 CPU 性能增長(zhǎng)速度放緩,為了尋求效率更高的計(jì)算芯片,DPU 由此產(chǎn)生攻谁。DPU 解決的是大流量網(wǎng)絡(luò)數(shù)據(jù)包處理占用 CPU 問(wèn)題稚伍。