隨著AI技術(shù)的普及,數(shù)據(jù)量越來(lái)越大,計(jì)算模型也變得越來(lái)越復(fù)雜,這對(duì)于傳統(tǒng)數(shù)據(jù)中心來(lái)說(shuō)是個(gè)挑戰(zhàn)。
計(jì)算性能挑戰(zhàn)與數(shù)據(jù)中心變革
眾所周知,傳統(tǒng)數(shù)據(jù)中心基于馮·諾依曼架構(gòu),在計(jì)算過(guò)程中要用到的所有數(shù)據(jù)都需要傳送到GPU或CPU上,并由這個(gè)GPU或CPU來(lái)計(jì)算。在以前計(jì)算規(guī)模、數(shù)據(jù)量沒(méi)有那么大的時(shí)候,馮·諾依曼架構(gòu)很好地解決了提高計(jì)算性能的問(wèn)題。
但如今,巨量數(shù)據(jù)在網(wǎng)絡(luò)通信過(guò)程中,常常會(huì)受到通信模型的制約,以至于影響到整個(gè)系統(tǒng)性能的發(fā)展。比如,在通信過(guò)程中,要出現(xiàn)Allreduce、Barrier這樣的多打一的通信情況時(shí),用傳統(tǒng)的馮·諾依曼架構(gòu)的計(jì)算模型就會(huì)造成網(wǎng)絡(luò)擁塞。這給數(shù)據(jù)中心性能提升提出了新的挑戰(zhàn)。
從傳統(tǒng)的馮·諾依曼架構(gòu)數(shù)據(jù)中心向以數(shù)據(jù)為中心的架構(gòu)轉(zhuǎn)型,成為數(shù)據(jù)中心正在發(fā)生的大變革。
網(wǎng)絡(luò)計(jì)算成為現(xiàn)在以數(shù)據(jù)為中心的核心計(jì)算架構(gòu)的關(guān)鍵技術(shù)之一。“網(wǎng)絡(luò)計(jì)算以數(shù)據(jù)為中心的新的架構(gòu),幫我們解決了這個(gè)問(wèn)題。以數(shù)據(jù)為中心的新的架構(gòu)意味著--數(shù)據(jù)在哪里,計(jì)算就在那里。”NVIDIA網(wǎng)絡(luò)事業(yè)部亞太區(qū)市場(chǎng)開發(fā)高級(jí)總監(jiān)宋慶春說(shuō),“當(dāng)數(shù)據(jù)在GPU上,計(jì)算就在GPU上;當(dāng)數(shù)據(jù)在CPU上,計(jì)算就在CPU上;當(dāng)數(shù)據(jù)在網(wǎng)絡(luò)中傳輸?shù)臅r(shí)候,計(jì)算就在網(wǎng)絡(luò)中。”通過(guò)這樣的方式就可以把解決網(wǎng)絡(luò)傳輸中多打一的瓶頸問(wèn)題或丟包問(wèn)題。典型通信延時(shí)可以從30-40微秒降低到3-4秒,性能提升10倍以上。
DPU能帶來(lái)什么?
DPU的出現(xiàn)為以數(shù)據(jù)為中心的計(jì)算架構(gòu)提供了創(chuàng)新思路。今年4月,NVIDIA發(fā)布了新一代數(shù)據(jù)處理器NVIDIA BlueField-3 DPU,旨在為數(shù)據(jù)中心提供強(qiáng)大的軟件定義網(wǎng)絡(luò)、存儲(chǔ)和網(wǎng)絡(luò)安全加速功能。
NVIDIA創(chuàng)始人兼首席執(zhí)行官黃仁勛在GPU技術(shù)大會(huì)上就曾表示:“現(xiàn)代超大規(guī)模云技術(shù)推動(dòng)數(shù)據(jù)中心從基礎(chǔ)上走向了新的架構(gòu),利用一種專門針對(duì)數(shù)據(jù)中心基礎(chǔ)架構(gòu)軟件而設(shè)計(jì)的新型處理器,來(lái)卸載和加速由虛擬化、網(wǎng)絡(luò)、存儲(chǔ)、安全和其它云原生AI服務(wù)產(chǎn)生的巨大計(jì)算負(fù)荷。BlueField DPU正是為此而生。”
BlueField-3 DPU可以從業(yè)務(wù)應(yīng)用中將數(shù)據(jù)中心的基礎(chǔ)設(shè)施服務(wù)卸載和隔離出來(lái),一個(gè)BlueField-3 DPU所提供的數(shù)據(jù)中心基礎(chǔ)設(shè)施服務(wù)可相當(dāng)于多達(dá)300個(gè)CPU核才能實(shí)現(xiàn)的服務(wù),從而釋放寶貴的CPU資源來(lái)運(yùn)行關(guān)鍵業(yè)務(wù)應(yīng)用。
DPU能針對(duì)安全、網(wǎng)絡(luò)、存儲(chǔ)、AI、HPC等業(yè)務(wù)進(jìn)行加速,這是DPU的第一層價(jià)值。而DPU的第二層價(jià)值在于為以數(shù)據(jù)為中心的計(jì)算架構(gòu)提供了創(chuàng)新的思路,能夠?qū)崿F(xiàn)以前難以或無(wú)法實(shí)現(xiàn)的功能。
之前在以CPU為主體的系統(tǒng)里,所有的操作都通過(guò)CPU來(lái)實(shí)現(xiàn)計(jì)算性能。以O(shè)VS Open vSwitch,(分布式虛擬多層交換機(jī)的開源實(shí)現(xiàn))操作為例,用CPU跑OVS的時(shí)候,它長(zhǎng)尾延遲會(huì)非常長(zhǎng),而很多工作性能的好壞取決于最后一個(gè)包的到達(dá)時(shí)間,在CPU上運(yùn)行OVS會(huì)消耗很多核,但包轉(zhuǎn)發(fā)的效率卻非常低,長(zhǎng)尾延時(shí)成為業(yè)務(wù)性能非常大的瓶頸。如果把OVS操作放在DPU上,則可以大幅提升包轉(zhuǎn)發(fā)率。此外,把OVS放到了DPU上運(yùn)行,還可以實(shí)現(xiàn)OVS和CPU業(yè)務(wù)之間的隔離,讓業(yè)務(wù)和OVS運(yùn)行在兩個(gè)獨(dú)立的平面上,這樣就可以來(lái)把業(yè)務(wù)的長(zhǎng)尾延遲大大降低了。
離不開的DOCA
其實(shí)在去年的GTC上,NVIDIA和VMWare就宣布了共同開發(fā)Monterey項(xiàng)目。這是在云場(chǎng)景下,VMWare把它在Hypervisor里的一些功能卸載到DPU上,比如防火墻、存儲(chǔ)、管理等,通過(guò)把業(yè)務(wù)和基礎(chǔ)設(shè)施操作完全隔離,實(shí)現(xiàn)了高安全性,也實(shí)現(xiàn)了裸金屬的業(yè)務(wù)性能。
另一個(gè)例子是英偉達(dá)與RedHat的合作。RedHat不管在數(shù)據(jù)中心運(yùn)行容器還是虛擬化環(huán)境里,即便使用所有的CPU核來(lái)運(yùn)行虛擬化或容器,也沒(méi)有辦法達(dá)到100G線速。這時(shí),采用DPU運(yùn)行Hypervisor、OVS或容器操作,可以在不消耗任何CPU的情況下以實(shí)現(xiàn)100G甚至200G全線速,并將CPU資源全部提供給業(yè)務(wù)。
DOCA是專門為DPU開發(fā)的軟件包,它的價(jià)值就像CUDA之于GPU一樣--通過(guò)CUDA可以看到所有GPU的開發(fā)接口,可以對(duì)它做編程;DOCA通過(guò)軟件定義,可以調(diào)用DPU里的硬件引擎,實(shí)現(xiàn)安全、網(wǎng)絡(luò)、存儲(chǔ)等性能的提升。
“最開始選擇DPU,是因?yàn)橛龅搅藗鹘y(tǒng)服務(wù)器帶寬瓶頸,我們想解決網(wǎng)絡(luò)性能瓶頸的問(wèn)題,也想降低成本。”UCloud技術(shù)專家馬彥青表示。
此前,UCloud網(wǎng)絡(luò)架構(gòu)使用的是VPC網(wǎng)關(guān),作為裸金屬服務(wù)器之間的VPC之間劃分的方法,需要很多網(wǎng)關(guān)服務(wù)器集群來(lái)進(jìn)行管理,當(dāng)跨網(wǎng)關(guān)的時(shí)候會(huì)有帶寬瓶頸,這就意味著,集群服務(wù)器本身就帶來(lái)了成本挑戰(zhàn)。馬彥青表示,DPU可以將VPC管理集成到DPU內(nèi)部,包括OVS包轉(zhuǎn)發(fā)以及GRE封裝都可以通過(guò)DPU硬件實(shí)現(xiàn),大幅提高轉(zhuǎn)發(fā)效率,原來(lái)10G的網(wǎng)卡升級(jí)到25G后,性能也大大提升。
“當(dāng)用了DPU+DOCA以后,你可以很容易在CPU消耗是零的情況下,達(dá)到400G的線速。”宋慶春說(shuō)。
DPU的出現(xiàn)并非要替代CPU和GPU,而是更好地滿足數(shù)據(jù)中心市場(chǎng)的需求。“3U(CPU、GPU、DPU)一體的架構(gòu)將會(huì)讓管理程序、調(diào)度程序都會(huì)變得非常容易。3U一體是要實(shí)現(xiàn)從邊緣到核心數(shù)據(jù)中心,統(tǒng)一架構(gòu)、統(tǒng)一管理、統(tǒng)一調(diào)度。”宋慶春說(shuō)。