老黃連續三年反覆提,這DPU是什麼風口之物?這類有你要的答案

有心的朋友可能都注意到,連續三年黃仁勳在NVIDIA的GTC等釋出活動上,都提出了發展DPU以促進邊緣計算等發展的言論。今年最新的NVIDIA釋出會,除了3090Ti外,就是新的DPU發展計劃。自CPU、GPU後,DPU再次登臺而且成為了新的“風口”。那麼,它究竟是什麼,吸引了從INTEL到NVIDIA等傳統巨頭都紛紛投入?

老黃連續三年反覆提,這DPU是什麼風口之物?這類有你要的答案

整合舊的處理單元,專注處理資料

相信很多人對於CPU(中央處理器)已經非常熟悉了。靈活、響應迅速的CPU多年來一直是大多數計算機中唯一的可程式設計元件。

近年來,GPU(圖形處理單元)逐漸成為了計算的中心。最初GPU是用來做功能強大的實時圖形處理,現在憑藉其優秀的並行處理能力,已經成為各種加速計算任務的理想選擇。

這使GPU成為了人工智慧、深度學習和大資料分析應用的關鍵。

過去十年中,計算已經不僅僅侷限在個人電腦和伺服器內,CPU和GPU已經被廣泛地用於各個新型超大規模資料中心。

這些資料中心透過功能強大的新型處理器連線在一起,DPU( Data Processing Unit ,資料處理器)已經成為了以資料為中心的加速計算模型的第三個計算單元。NVIDIA執行長黃仁勳在一次演講中表示:“它將成為未來計算的三大支柱之一。”

CPU用於通用計算,GPU用於加速計算,而資料中心中傳輸資料的DPU則進行資料處理。”

D

PU

是一種

基於行業標準,高效能及軟體可程式設計的多核

CPU

,核心是具有

高效能網路介面

靈活、可程式設計的加速引擎

,滿足特定場景的計算需求。

老黃連續三年反覆提,這DPU是什麼風口之物?這類有你要的答案

DPU出現,因為CPU和GPU接近極限

從x86 CPU,到移動網際網路時代的ARM CPU,構成了傳統IT的硬體裝置核心。隨著區塊鏈和3D、AI人工智慧技術的發展,GPU又成為了計算能力的新規。然而到了萬物互聯的元宇宙時代,人們突然發現一個重要的問題:

無論是CPU還是GPU,它們的效能快不夠用了。

老黃連續三年反覆提,這DPU是什麼風口之物?這類有你要的答案

CPU幾乎快要觸及半導體原料的物理效應極限,人類衝擊2nm以下的工藝製程困難重重。GPU雖然憑藉可接受的更大晶片體積以及並行化處理,還能透過堆疊的方式繼續衝擊性能,但是功耗已經大大提高到和節能環保背離,40系顯示卡需要千瓦級電源就是最好的個案。

傳統提升CPU和GPU算力的主要途徑,就是堆料,說白了就是不斷增加核心的數量。CPU從最初的單核、到雙核、四核,再到現在誇張的128核,這種簡單粗暴的堆料方法已經走到了盡頭:功耗的限制讓傳統制程和架構的提高有了極限。

晶片上的核心就像大樓的房間,當大樓總表的電力有限的時候,這些房間的電器不能同時開啟,因此即便房間很多,能用起來的並不多,這就是12代酷睿為何發展出P、E核,ARM為啥從六七代開始就有了大小核之分的原因。

單個晶片的功耗並不能無限制增加,所以即便堆了很多核心,它們也無法同時高效工作,這就造成了CPU的效能瓶頸。

DPU領跑“領域架構”

領域專用架構(Domain Specific Architecture),也稱作DSA。DPU就是其中的代表,其核心思想,是針對特定領域做晶片架構的最佳化,從而實現效能和功效的雙重提升。

DPU正是透過架構最佳化、場景最佳化、軟體最佳化,完成了在資料中心場景裡,傳統CPU已經無力估計的眾多方面。

DPU本身是一種SOC(System On Chip,片上系統)晶片,它結合了:

行業標準的、高效能及軟體可程式設計的多核

CPU

通常基於已應用廣泛的Arm架構,與其的SOC元件密切配合。例如NVIDIA的BlueField-3裡有16個ARM A78核心,8MB L2、16MB L3 Cache。它還支援可程式設計的資料通路,包含16個核心、256執行緒。

高效能網路介面,能以線速或網路中的可用速度解析、處理資料,並高效地將資料傳輸到

GPU和CPU。

以NVIDIA的DPU為例,從BlueField-2的200Gbps乙太網或InfiniBand、PCIe Gen4x16支援,到BlueField-3的400Gbps乙太網、PCIe Gen5x32支援,核心都是幾何級提高晶片的網路核數據匯流排速度,提高資料處理效率。

各種靈活和可程式設計的加速引擎,可以解除安裝

AI、機器學習、安全、電信和儲存等應用,並提升效能。

DPU在晶片架構上進行了領域專用最佳化,比如BlueField裡就集成了很多專用的硬體加速器,比如對Virtio、NVMe、IPSec等等資料中心常見協議的硬體模組。原本這些協議都是使用CPU執行開發者程式碼實現,現在直接透過DPU就可以用硬體實現了,就像硬體解碼一樣,效率大大提升。

所有這些DPU功能對於實現安全的、裸效能的、原生雲計算的下一代雲上大規模計算至關重要。

是網絡卡,更是DPU

來看看一個簡單的DPU單元,所謂的smartNIC。

老黃連續三年反覆提,這DPU是什麼風口之物?這類有你要的答案

DPU可以用作獨立的嵌入式處理器,但通常是被整合到SmartNIC(一種作為下一代伺服器中關鍵元件的網絡卡)中。上圖就是一張採用NVIDIA的BludField-2 DPU的SmartNIC。

為什麼DPU採用SmartNIC的形態呢?

如果想透過蠻力在效能上擊敗傳統的x86 核ARM架構的CPU,結果註定會失敗,這樣做既沒有競爭力,也無法擴充套件。如果說一個傳統 CPU尚且無法以每秒100 Gb的速度處理資料包,如何能期望一個嵌入式CPU做到?

老黃連續三年反覆提,這DPU是什麼風口之物?這類有你要的答案

某DPU系統透過內建的高速資料匯流排核模組,同時處理多路NVME SSD資料,實現高達1500萬IOPS的4K讀取效能

但換個思路,如果網絡卡足夠強大和靈活,可以處理所有網路中的資料,而嵌入式CPU則被用來做控制路徑的初始化和異常情況處理,一切就都解決了。

老黃連續三年反覆提,這DPU是什麼風口之物?這類有你要的答案

DPU如果專注處理海量特定資料,那麼CPU方面就可以專注實用虛擬機器等技術給使用者提供更好體驗

這就是DSA領域專用架構帶來的DPU思想的精髓。根據具體的應用領域進行最佳化,幫傳統CPU減負,任何可以不需要在CPU上執行的任務,都放在DPU上執行。

DPU

興起,就是因為它

解決了現代資料中心裡CPU解決不了的一系列難題

,實現了

架構最佳化、場景最佳化、軟體最佳化。