DPU究竟是一個(gè)什么U
隨著芯片越造越多,字母表已經(jīng)不夠用了,。從APU到ZPU,好像每個(gè)“PU”都有芯片與之對(duì)應(yīng),。對(duì)于熱門的名字,,更是僧多粥少,DPU就是其中之一。
在AI風(fēng)生水起的時(shí)候,,DPU代表的是“深度學(xué)習(xí)處理器”,,而我們今天的主角還不配擁有名字,當(dāng)時(shí)叫做“智能網(wǎng)卡SmartNIC”,。
這個(gè)名字聽起來既不智能,,也不上口,這也注定了它并不能被大多數(shù)人所認(rèn)知,。
工程師通常不屑于營(yíng)銷,,但不可否認(rèn)的是,沒有營(yíng)銷,,再好的產(chǎn)品也賣不出來,。
當(dāng)一個(gè)人既懂技術(shù)、又懂人心,,創(chuàng)造一個(gè)新的概念就是順理成章的事情,。
2020年10月,黃仁勛在英偉達(dá)GTC大會(huì)上正式官宣了一款新處理器,,名叫DPU – Data Processing Unit,。
這一年,應(yīng)該可以算是DPU的元年,。在此之后,,人們?cè)偬岬紻PU的時(shí)候,指的都是數(shù)據(jù)處理器,,而非深度學(xué)習(xí)處理器了,。
和智能網(wǎng)卡相比,DPU的本質(zhì)并沒有根本性的變化,。很多人嘗試將二者區(qū)分開,,借此說明DPU是一個(gè)全新的跨時(shí)代產(chǎn)品,這其實(shí)并不真實(shí),、也沒必要,。
老黃總結(jié)了3個(gè)DPU的特點(diǎn):卸載、加速,、隔離,。我很認(rèn)同這個(gè)總結(jié),但這只代表了一個(gè)維度,。
在另外一個(gè)維度上,,則是DPU的三個(gè)主要應(yīng)用場(chǎng)景:網(wǎng)絡(luò)、存儲(chǔ),、安全,。這兩個(gè)維度結(jié)合在一起,,才是DPU的完整矩陣,也能很好的解答很多“為什么”,、“是什么”的問題,,比如:
DPU卸載了什么:數(shù)據(jù)中心網(wǎng)絡(luò)服務(wù),比如虛擬交換,、虛擬路由,;數(shù)據(jù)中心存儲(chǔ)服務(wù),比如RDMA,、NVMe(可以把它們理解成一些遠(yuǎn)程存儲(chǔ)技術(shù)),;數(shù)據(jù)中心的安全服務(wù),比如防火墻,、加解密等等,。
DPU加速了什么:上面說的那些服務(wù)和應(yīng)用通常使用軟件實(shí)現(xiàn),并在CPU里運(yùn)行,。而DPU可以使用硬件實(shí)現(xiàn)并運(yùn)行這些應(yīng)用,,這樣比軟件運(yùn)行要快好幾個(gè)數(shù)量級(jí),這也就是我們常常會(huì)聽到的“硬件加速”,。
DPU隔離了什么:由于上面說的應(yīng)用在DPU里運(yùn)行,,而用戶應(yīng)用在CPU里運(yùn)行,這樣就把二者隔離開了,。這樣會(huì)帶來很多安全和性能上的好處,。
舉個(gè)例子,假設(shè)我們要玩一個(gè)“云游戲”,,游戲本身運(yùn)行在服務(wù)器的CPU上,,而賬號(hào)管理、存檔,、和隊(duì)友的交互方式,、游戲數(shù)據(jù)的發(fā)送和接收等等,這些不需要玩家參與,、但對(duì)游戲體驗(yàn)有極大影響的內(nèi)容,,都可以運(yùn)行在DPU里完成。
DPU和CPU,、GPU的關(guān)系
摩爾定律的發(fā)展和芯片行業(yè)的發(fā)展,,究竟是雞生蛋、還是蛋生雞,,人們已經(jīng)樂此不疲地討論很多年了,。不管是誰成就誰,亦或是相互成就,,有一件事情是確定的,,那就是我們需要新的芯片結(jié)構(gòu),,來延續(xù)發(fā)展的腳步。
一個(gè)很重要的共識(shí)就是,,CPU已經(jīng)很難做好所有事情了。
要特別注意的是,,這里不是“很難做”,,而是“很難做好”。一字之差,,意思完全不同,。
在今年4月的GTC大會(huì)上,老黃又分享了他對(duì)于數(shù)據(jù)中心架構(gòu)變革的理解,,一共分成五個(gè)階段,。
最早的數(shù)據(jù)中心里,CPU是絕對(duì)的王,。不管是一開始的原始架構(gòu),,再到之后軟件定義、分布式的可擴(kuò)展結(jié)構(gòu),,都是如此,。
唯一有所區(qū)別的,是應(yīng)用的實(shí)現(xiàn)方式,。算力和應(yīng)用更是雞和蛋的關(guān)系,,CPU計(jì)算能力的提升,就能帶來應(yīng)用的爆發(fā),,人工智能就是如此,。應(yīng)用的多樣化,又會(huì)對(duì)算力提出更高要求,。比如現(xiàn)在同樣火熱的超大規(guī)模神經(jīng)網(wǎng)絡(luò),,動(dòng)輒上千億甚至上萬億參數(shù),就好像底層算力都是白給的,。
英偉達(dá)的春天,,就這樣到來了。
人們發(fā)現(xiàn),,單純使用CPU并不能滿足AI工程師和調(diào)參者對(duì)算力的野心,,而GPU特別適合這類計(jì)算。GPU上有成千上萬個(gè)小型計(jì)算單元,,他們可以同時(shí)計(jì)算一個(gè)難題里的不同部分,,然后再把結(jié)果結(jié)合起來,也就是“并行計(jì)算”,。在處理很多問題的時(shí)候,,這種人海戰(zhàn)術(shù)比CPU的“串行計(jì)算”不知道要高到哪里去了,。
從此,CPU不再是數(shù)據(jù)中心里唯一的王,。英偉達(dá)也成了世界上市值最高的芯片公司,。
舊時(shí)代落幕,新時(shí)代開啟,。GPU的登場(chǎng),,只是這場(chǎng)大秀的序曲。
把CPU的一大部分算力卸載給GPU之后,,人們發(fā)現(xiàn)可以把很多其他功能也外包出去,,于是又有了智能網(wǎng)卡,或者叫做DPU,。
人們又發(fā)現(xiàn),,給CPU卸掉這些包袱之后,反而表現(xiàn)的更好,,再次煥發(fā)了第二春,。因?yàn)椴还苁荊PU還是DPU,都需要CPU居中調(diào)度和管理,,這恰恰是CPU最早的設(shè)計(jì)初衷,。
就這樣,CPU,、GPU,、DPU組成了現(xiàn)代數(shù)據(jù)中心的鐵三角。
未來是否就這樣,?我看未必,。未來何時(shí)才能到來?或許很快,。至少在下周的GTC大會(huì)上,,應(yīng)該就有下一代DPU的最新進(jìn)展。但不管怎樣,,這種三位一體的架構(gòu)解決了很多現(xiàn)有的問題,,這就足夠了。
沒有軟件,,芯片就只是昂貴的沙子
很多年前我做學(xué)術(shù)的時(shí)候,,有一類很流行的領(lǐng)域,名曰“算法加速”,。去看這個(gè)領(lǐng)域的論文,,都寫的極其振奮人心,甚至有些驚悚。在這個(gè)領(lǐng)域里,,CPU就是悲催的存在,,它為所有工作奠定了一個(gè)基準(zhǔn)。相比于CPU,,每個(gè)工作動(dòng)輒幾倍,、幾十倍、甚至上百倍的性能提升,。
這么多年過去了,,CPU在數(shù)據(jù)中心的王座依然挺立,只不過旁邊多了GPU,,還有一個(gè)DPU蠢蠢欲動(dòng),僅此而已,。
我并不是否定這些工作的學(xué)術(shù)貢獻(xiàn),,只是很自然的會(huì)問:既然這些工作這么牛逼,它們都去哪了,?
歸根到底,,沒有軟件、沒有生態(tài),、沒法落地,。
溫室里的苗,需要經(jīng)歷風(fēng)雨的洗禮,,才能知道是否能長(zhǎng)成大樹,。
開發(fā)者從來都是用腳投票,誰的東西好用,,就用誰的,。性能固然重要,但如果沒法使用,、不好用,,性能再強(qiáng)的芯片也不過是昂貴的沙子。
多年前,,英偉達(dá)憑借CUDA,,一舉幫GPU打開局面,吸引了大批軟件開發(fā)者,。而FPGA的開發(fā)者,,還在糾結(jié)Verilog怎么寫、時(shí)序怎么調(diào),、引腳怎么分配,。
現(xiàn)在DPU來了,開發(fā)者怎么辦,?
今年4月的GTC大會(huì)上,,老黃正式官宣了一個(gè)名為DOCA的SDK,,這也是英偉達(dá)為上面的靈魂拷問給出的答案。
DOCA全名叫Data Center Infrastructure-on-a-Chip Architecture,。作為一個(gè)SDK,,它包含了DPU支持的所有軟件功能:各種庫、各種服務(wù),、各種驅(qū)動(dòng),、各種框架、各種OS……
有了意大利炮,,還需要一發(fā)炮彈,。DOCA并不是炮彈,而是用來造炮彈的工廠,。有了軟件和生態(tài),,DPU就不再是昂貴的沙子,而是數(shù)據(jù)中心的“大殺器”,。
如果要用一個(gè)詞總結(jié)DOCA的特點(diǎn),,就是“兼容”。新生事物大都需要兼容現(xiàn)有體系,,然后才能慢慢發(fā)展壯大,。這片江山,朕不給,,你不能搶,。
即使大如英偉達(dá),也意識(shí)到很難從零開始自建一個(gè)數(shù)據(jù)中心生態(tài),。況且,,這也根本沒有必要。
除了兼容,,還有開放,、合作。只有把蛋糕做大,,每個(gè)人分到的那部分才會(huì)更多,。大家好,才是真的好,。當(dāng)一個(gè)人既懂技術(shù),、又懂人心,做出這樣的決策也是順理成章的事情,。
在DOCA里,,你可以看到幾乎所有常見的數(shù)據(jù)中心基礎(chǔ)設(shè)施技術(shù)、廠商,英偉達(dá)也在打造開發(fā)者社區(qū),,積極建設(shè)生態(tài),。在11月馬上要舉行的GTC上,預(yù)計(jì)會(huì)發(fā)布DOCA的最新進(jìn)展,。DOCA和CUDA,,總有一個(gè)會(huì)是英偉達(dá)未來發(fā)展的支柱。
結(jié)語
DPU的出現(xiàn),,是時(shí)代的必然,。但它未來的發(fā)展,還有無限種可能,。DPU里集成的技術(shù),,肯定會(huì)有更多的變化。我們需要做的,,除了跟隨這些變化,,更應(yīng)該透過現(xiàn)象看到本質(zhì)。只要底層邏輯不變,,發(fā)展的趨勢(shì)就不會(huì)變。