讀懂云計算,才能看清DPU熱潮。
如果細(xì)數(shù)最近火爆的科技概念,DPU必然位列其中。
這是英偉達(dá)一手捧紅的新造富故事,是2021年SoC領(lǐng)域最熱火朝天的創(chuàng)業(yè)賽道,也是數(shù)據(jù)中心繼CPU、GPU后的又一大“臺柱子”。
盡管在云計算領(lǐng)域已經(jīng)培育多年,但對于外界來說,DPU并不是一個容易理解的概念,各路玩家的產(chǎn)品定義和結(jié)構(gòu)設(shè)計也不盡相同。
總體來說,DPU是個軟硬一體的數(shù)據(jù)處理單元,通常以架構(gòu)的形式存在,可以幫CPU“減負(fù)”,解決一些CPU處理數(shù)據(jù)方面的短板問題,并提供硬件加速的網(wǎng)絡(luò)、存儲、安全、基礎(chǔ)設(shè)施管理等服務(wù)。
而追溯DPU的源頭,真正實現(xiàn)大規(guī)模商用DPU架構(gòu)的,歷數(shù)全球,主要有兩家云計算巨頭——西方的亞馬遜云AWS,東方的阿里云。
2017年10月,阿里云的神龍架構(gòu)橫空出世;僅1個月后,AWS的Nitro也走到了歷史臺前。這兩個為了解決虛擬化問題而相繼問世的創(chuàng)新產(chǎn)品,被業(yè)界視作迄今最成功的兩款DPU。
一手促成神龍架構(gòu)誕生的張獻(xiàn)濤,也是國內(nèi)最懂DPU的人物之一。
如今,第四代阿里云神龍已經(jīng)開始支撐阿里云的大規(guī)模云上業(yè)務(wù),并在計算、存儲、網(wǎng)絡(luò)、安全四項關(guān)鍵指標(biāo)達(dá)成業(yè)界最高水平。
近日,芯東西獨家對話阿里巴巴集團(tuán)研究員、阿里云彈性計算產(chǎn)品線負(fù)責(zé)人張獻(xiàn)濤(花名旭卿),聽他講述云端業(yè)務(wù)需求變化、持續(xù)創(chuàng)新的研發(fā)心得,以及對DPU熱潮的獨到思考。
在他看來,這不是一類適合走通用路線的芯片,對于云廠商而言,DPU是一個軟硬件技術(shù)棧結(jié)合極其密切的工作,是軟件定義的計算架構(gòu),DPU必須以自研為主,做到相關(guān)軟硬件技術(shù)棧完全可控,且經(jīng)過超大規(guī)模驗證。而做通用DPU的公司很難滿足云廠商的需求,被收購或許是最佳結(jié)局。
01.
風(fēng)起云計算
DPU的新風(fēng)口來得突然。
2020年10月,在NVIDIA GTC 2020大會上,NVIDIA創(chuàng)始人兼CEO黃仁勛宣布推出一種全新數(shù)據(jù)處理器——DPU。
這顆被稱作“未來計算三大支柱之一”的處理單元,赫然闖入大眾和資本的視野。
此時,距離阿里云軟硬一體虛擬化架構(gòu)「神龍」的誕生,已經(jīng)過去整整四年。如今,其被市場視作阿里云的DPU,而這個頗具開創(chuàng)性的創(chuàng)新架構(gòu),當(dāng)初是為解決傳統(tǒng)虛擬化技術(shù)應(yīng)用到云計算帶來的成本、性能、服務(wù)質(zhì)量以及安全問題而生的。
張獻(xiàn)濤是負(fù)責(zé)阿里云神龍的核心人物,于2014年加入阿里云,彼時他已經(jīng)從事虛擬化技術(shù)研究約十年,阿里云剛走到第五個年頭。傳統(tǒng)虛擬化架構(gòu)的種種缺陷,日漸成為掣肘這家云計算公司降本增效、提升服務(wù)質(zhì)量的頑疾。
虛擬化技術(shù)是云計算的基礎(chǔ),它將原本不可分割的硬件資源抽象成共享資源池,按需分配和共享計算、存儲、網(wǎng)絡(luò)資源。
而管理資源,就需占用掉一些原本用于運行業(yè)務(wù)負(fù)載的CPU和內(nèi)存,也就造成了資源損耗。
比如一個工廠有100位工人,如果他們?nèi)咳チ魉€上干活,那么資源利用率是100%;但如果從中抽出10人負(fù)責(zé)統(tǒng)籌管理,那么余下只有90人在流水線上干活,利用率則降為90%。
隨著云計算業(yè)務(wù)規(guī)模持續(xù)擴大規(guī)模,資源爭搶、算力損失、性能瓶頸等問題日益嚴(yán)峻,尋求解局之道已然迫在眉睫。
經(jīng)過兩年摸索,阿里云的穩(wěn)定性不再是問題。2016年,張獻(xiàn)濤開始思考下一代虛擬化技術(shù)方案在哪里?什么樣的方案,才能符合阿里云未來長期的發(fā)展?
神龍(X-Dragon)應(yīng)運而生。
這是團(tuán)隊頭腦風(fēng)暴的結(jié)果。假如造出一個專門負(fù)責(zé)做虛擬化的架構(gòu),那么CPU的算力資源就被釋放出來,能夠更聚焦于運行云上業(yè)務(wù)。
第一代神龍正式立項的時間是2017年4月1日。將問題定義出來后,張獻(xiàn)濤開始組建團(tuán)隊,從系統(tǒng)架構(gòu)設(shè)計到芯片及硬件開發(fā),到服務(wù)器開發(fā),再到系統(tǒng)軟件的研發(fā)適配,初始團(tuán)隊總共二十幾個人干了半年的時間,成功于2017年10月將神龍上線。
自此以后,作為處理高速數(shù)據(jù)流的高手,神龍架構(gòu)從CPU手頭接過虛擬化的重任,一路帶飛存儲、網(wǎng)絡(luò)、安全等關(guān)鍵性能。
02.
從小試牛刀,到大規(guī)模落地
一開始,張獻(xiàn)濤其實不太接受「DPU」這個命名方式。
DPU的“D”有幾種常見解釋,包括“數(shù)據(jù)”、“數(shù)據(jù)中心”、“以數(shù)據(jù)為中心”等??蓢?yán)格意義上來講,數(shù)據(jù)中心的哪個主力芯片(如CPU、GPU)不符合這些特征呢?
因此,阿里云對神龍架構(gòu)的闡述是,真正為云而生的、軟硬一體的技術(shù)架構(gòu)。在他看來,未來是一個云的時代,需要這樣的技術(shù)架構(gòu)來全面解決成本、性能、安全等問題。目前來看,DPU想做的似乎是類似的事情,市場也認(rèn)為阿里云和AWS做的就是DPU。
阿里云和AWS之所以近乎“同步”地推出DPU,最直接的原因是云計算發(fā)展到一定階段后,研發(fā)人員意識到,有了這樣的數(shù)據(jù)處理架構(gòu),成本將大幅下降,同時性能會大幅提升,再加上云廠商的規(guī)模化優(yōu)勢能為客戶提供更有競爭力的高性價比服務(wù)。
無論是阿里云的神龍,還是AWS的Nitro,早期都主攻虛擬化的性能損耗、資源損耗問題,即成本和性能問題。
張獻(xiàn)濤給我們算了一筆賬,那時阿里云營收規(guī)模已經(jīng)達(dá)到上百億元,如果存儲、網(wǎng)絡(luò)占用約10%的CPU資源,則意味著年損失10多億元。無論從提升性能還是優(yōu)化成本的角度,研發(fā)神龍都勢在必行。
取得技術(shù)突破只是第一步。神龍上線后,如何大規(guī)模應(yīng)用成為新的挑戰(zhàn)。
阿里云先在內(nèi)部業(yè)務(wù)試水,2017年雙十一期間部署了1000臺支撐天貓大促業(yè)務(wù),成功驗證沒有問題。上汽集團(tuán)是第一家吃螃蟹的外部客戶,提出愿意嘗試這個新產(chǎn)品,與阿里云共擔(dān)風(fēng)險。雙方一起磨了近兩個月,到臨近春節(jié),終于將穩(wěn)定性、性能等問題通通解決。
在此類種子客戶的支持下,阿里云神龍打磨出大規(guī)模上云的功底,并開始成長為阿里云最核心的競爭力之一。
從2019年起,阿里巴巴集團(tuán)的所有業(yè)務(wù)、包括阿里云的計算類服務(wù)全部遷至神龍架構(gòu)。到2021年10月,第四代神龍架構(gòu)問世,其存儲IOPS高達(dá)300萬、網(wǎng)絡(luò)PPS達(dá)5000萬、網(wǎng)絡(luò)延時最低5微秒等多項指標(biāo)刷新業(yè)界最高水平。
根據(jù)知名國際市場研究機構(gòu)Gartner公布的2021年度全球云計算廠商整體能力評估報告,阿里云IaaS基礎(chǔ)設(shè)施能力超越AWS拿下全球第一,并在計算、存儲、網(wǎng)絡(luò)、安全四項核心評比中獲得最高分。
▲Gartner Solution Scorecard 2021報告顯示,阿里云四項能力超AWS
03.
云廠商必須自研DPU
云計算市場正在飛速擴容,當(dāng)每臺云服務(wù)器中都需要一個DPU,誰能躋身頭部,誰就可能享受到難以估量的市場紅利。
僅在2021年,獲得新融資的國內(nèi)DPU企業(yè)就有不少于7家,包括湖州芯啟源、北京大禹智芯、珠海星云智聯(lián)、上海益思芯科技、深圳云豹智能、上海云脈芯聯(lián)、北京中科馭數(shù)等。
其中多數(shù)企業(yè)單筆融資額達(dá)數(shù)億元,且投資方不乏知名科技企業(yè)身影。比如,星云智聯(lián)A輪融資由美團(tuán)獨家投資,騰訊投資了云豹智能,云脈芯聯(lián)的投資方有字節(jié)跳動、壁仞科技……
但資本只看見熱度,未必能看清里面的坑。
在張獻(xiàn)濤看來,DPU不應(yīng)該被視作「智能網(wǎng)卡」的繼任者,智能網(wǎng)卡只解決網(wǎng)絡(luò)加速問題,而DPU的功能遠(yuǎn)比智能網(wǎng)卡豐富。
有些DPU創(chuàng)企其實仍在做智能網(wǎng)卡,也有創(chuàng)企想在智能網(wǎng)卡的基礎(chǔ)上做演進(jìn)。但他認(rèn)為:“在一個智能網(wǎng)卡上打補丁是解決不了的,因為本身設(shè)計理念是不一致的。”從架構(gòu)層面來講,DPU的架構(gòu)是在DPU系統(tǒng)上插入一臺服務(wù)器從而解決整臺服務(wù)器相關(guān)的數(shù)據(jù)處理加速和安全及管控問題,而智能網(wǎng)卡架構(gòu)則是在服務(wù)器上插入一個網(wǎng)卡解決網(wǎng)絡(luò)加速的問題,二者有本質(zhì)性的區(qū)別。
形雖差之毫厘,神卻謬以千里。
自2017年推出神龍后,張獻(xiàn)濤印象中,幾乎所有DPU公司的DPU架構(gòu)、接口、功能模塊、能力實現(xiàn)等,都是仿照神龍已公開的架構(gòu)來設(shè)計。
可為何仿照神龍設(shè)計,仍然很難做好DPU?
核心問題出在對云業(yè)務(wù)的理解。張獻(xiàn)濤說,第三方廠商通過跟客戶、工程師溝通,只能得到對云業(yè)務(wù)需求的片面了解,所以最終做出來的效果很難滿足客戶需求。
他堅信,云廠商必須自研DPU架構(gòu)。“如果不熟悉軟件架構(gòu)和系統(tǒng)軟件棧,不熟悉自家技術(shù)棧中哪些地方才是瓶頸,很難把它設(shè)計得很好,而這些都是外部DPU公司很難拿到的技術(shù)信息。”
換個角度來看,對云廠商而言,只有從硬件架構(gòu)到固件到軟件棧都自研,才能做到整個技術(shù)鏈路的可控,它才能成為一個負(fù)責(zé)任的云廠商。
近年云計算廠商的動向印證了張獻(xiàn)濤的判斷。京東云研發(fā)基于自研智能芯片的虛擬化架構(gòu)京剛,谷歌云與英特爾合作研發(fā)基礎(chǔ)設(shè)施處理芯片IPU,字節(jié)跳動宣布其自研DPU將通過火山引擎云產(chǎn)品對外服務(wù)……
“從終局上判斷,今天DPU的創(chuàng)業(yè)公司沒有太好的出路,最好的出路就是把相關(guān)業(yè)務(wù)出售,賣給有需要的云計算公司,通過被收購變現(xiàn)。”張獻(xiàn)濤說,如果對云計算業(yè)務(wù)不夠了解,一味想把DPU做成通用架構(gòu)是很難成功的,做DPU的公司,最終都要和云廠商做產(chǎn)品和技術(shù)的共建合作,這樣成功的可能性才會提升。
04.
DPU不適合走通用路線
“業(yè)界投資的DPU都想嘗試著做一顆通用的DPU,有的甚至想推配套的軟件技術(shù)棧作為業(yè)界標(biāo)準(zhǔn),其實出發(fā)點就是有問題的。”
這是因為DPU完全由軟件定義的架構(gòu),由客戶需求或業(yè)務(wù)發(fā)展形態(tài)驅(qū)動,與客戶整個后端軟件棧結(jié)合非常緊密,很難做到通用的程度。
在張獻(xiàn)濤看來,真正做出DPU,并且讓客戶規(guī)?;闷饋恚鋵嵄華I芯片還要難。
關(guān)鍵難點在于,它的軟件生態(tài)注定培養(yǎng)不起來,因為各家公司的軟件技術(shù)棧都發(fā)展多年,很難廢掉去適配一個難于自控的外部廠商推薦的技術(shù)棧,所以在三年之后,DPU領(lǐng)域一定會出現(xiàn)整合,一些公司可能會消失或者被賣掉。
DPU的使用者通常是云計算公司或做虛擬化軟件的公司。如果只是針對某一個軟件棧來做,無法實現(xiàn)通用,如果想做得非常通用,“因為各家的軟件棧都不一樣,整個安全機制的設(shè)計也都不一樣,則很難和云廠商進(jìn)行適配”。
這與GPU+CUDA的邏輯不同。英偉達(dá)花了十多年研發(fā),又遇到深度學(xué)習(xí)爆發(fā)的契機,才將這樣的生態(tài)穩(wěn)固下來,成為業(yè)界的標(biāo)準(zhǔn)。
而在DPU領(lǐng)域,各家公司的軟件棧已經(jīng)存在,互不相同,強行標(biāo)準(zhǔn)化很難實現(xiàn),并且研發(fā)周期長、固件很難開放、接口的定義不一致等都是不可控的因素。
“如果想做一個統(tǒng)一的標(biāo)準(zhǔn),放之四海而皆準(zhǔn)的標(biāo)準(zhǔn)或者軟件生態(tài),是非常難的。”張獻(xiàn)濤解釋說,當(dāng)每家軟件棧不一樣時,DPU要處理的數(shù)據(jù)格式也都不同,因此很難將這樣的一個完全固化、做出統(tǒng)一的東西。
▲阿里巴巴集團(tuán)研究員、阿里云彈性計算產(chǎn)品線負(fù)責(zé)人張獻(xiàn)濤
05.
配合軟件迭代節(jié)奏,升級安全可信功能
經(jīng)過四年的歷練,神龍架構(gòu)積累了哪些優(yōu)勢?又如何取得超越AWS Nitro的性能?
張獻(xiàn)濤首先提到「快速迭代」。
做軟硬融合,需要架構(gòu)隨著軟件迭代而升級改造。研發(fā)一顆ASIC的周期大概是24個月起步,這對于互聯(lián)網(wǎng)軟件迭代的節(jié)奏來說,實在太久了。
因此,阿里云神龍采用FPGA的模式來做,并且做到了FPGA和配套系統(tǒng)軟件全面在線實時熱升級的能力,以便每周均可升級,通過靈活地持續(xù)優(yōu)化,最終實現(xiàn)更極致的性能。
“到今天為止,最適合做DPU的還是可編程可升級的FPGA。”張獻(xiàn)濤亦談到選用FPGA的局限性,隨著將更多功能做到DPU里,F(xiàn)PGA的邏輯單元數(shù)等可能會制約DPU的發(fā)展,這就更需要技術(shù)人員不浪費每一個邏輯單元把必要功能和性能做到極致。
要做出好的DPU,對于「軟硬件融合設(shè)計的理解」也必須到位。這是一個從軟件、硬件到對應(yīng)固件和上層系統(tǒng)不斷迭代的過程。
軟硬件之間的接口甚至寄存器的設(shè)計,都需與軟件充分融合,如果企業(yè)對自己的軟件掌握程度很高,又對軟硬件協(xié)同的思路、對架構(gòu)和相關(guān)協(xié)議理解深刻,才能逐步打磨好性能。
第一代神龍的網(wǎng)絡(luò)轉(zhuǎn)發(fā)做到了每秒600萬數(shù)據(jù)包,當(dāng)時Nitro大約為每秒300萬;經(jīng)過更多數(shù)據(jù)鏈路上的任務(wù)改用硬件加速,第三代神龍做到2400萬,最新一代更是做到了5000萬。傳統(tǒng)RDMA組網(wǎng)能力通常為千臺規(guī)模,而第四代神龍的eRDMA組網(wǎng)能力可至數(shù)10萬臺,真正實現(xiàn)了RDMA能力的通用化和平民化,助力高性能計算以及當(dāng)前流行的云原生軟件架構(gòu)的發(fā)展需求。
此外,新一代神龍加入了對「可信計算與加密計算」的支持,實現(xiàn)系統(tǒng)可信防篡改與數(shù)據(jù)可用不可見,確??蛻魧Α赴踩沟囊?。
后續(xù)阿里云計劃在所有數(shù)據(jù)鏈路經(jīng)過神龍架構(gòu)時做更多預(yù)處理,從而大大提升DPU的計算效率。原來計算1萬條數(shù)據(jù),所有數(shù)據(jù)都落到內(nèi)存里挨個算,現(xiàn)在做預(yù)處理后可能只需要計算50條,這樣一來,效率就提升了數(shù)倍。
據(jù)張獻(xiàn)濤透露,接下來,除了做到速度更快、帶寬更高、延遲更低、每秒IO次數(shù)更多外,神龍架構(gòu)還將在性能、穩(wěn)定性、安全性方面層層加碼,推動神龍作為加密計算的載體。
06.
結(jié)語:未來走向,破解內(nèi)存墻難題
隨著DPU一路走俏,云計算廠商陸續(xù)通過自研或投資的方式謀篇這一賽道,一些DPU設(shè)計創(chuàng)企亦開始嶄露頭角。
“我們2017年神龍的架構(gòu)就公開了,大家都在follow這個標(biāo)準(zhǔn)來做,今天發(fā)展到這樣的程度,我們覺得還是挺欣慰的。”張獻(xiàn)濤認(rèn)為,DPU發(fā)展正在走入正軌,更多人意識到它的重要性對于業(yè)界是一件好事,它將提升整個云計算的效率。
DPU本質(zhì)上是一種基礎(chǔ)軟硬件協(xié)同設(shè)計的系統(tǒng),從研發(fā)出來到一些種子用戶去用起來,需要兩三年時間。他相信,未來兩到三年內(nèi),DPU的熱度都將持續(xù),但到一定的階段,它會像今天做AI芯片一樣走向收斂,一些不正確的思路將被逐漸淘汰掉。
面向未來,DPU領(lǐng)域可做的東西還很多。
比如新興的存內(nèi)計算,本質(zhì)上要解決的問題與DPU是一致的,即如何減少數(shù)據(jù)搬移,從而提升計算效率和降低功耗。所有數(shù)據(jù)經(jīng)過DPU時都可以進(jìn)行一次存內(nèi)計算過濾,只有有效的數(shù)據(jù)才會進(jìn)入主CPU內(nèi)存,這樣整個計算系統(tǒng)的性能也將會數(shù)倍的提升。
“縱觀未來,你會發(fā)現(xiàn)尤其是今天異構(gòu)計算變成潮流的情況下,幾乎所有DPU努力的方向都是為了解決掉內(nèi)存墻帶來數(shù)據(jù)處理效率下降的問題。”張獻(xiàn)濤相信,未來DPU的發(fā)展值得期待,并將一定和某種業(yè)務(wù)結(jié)合度越來越高。