數(shù)據(jù)中心的加速器正小型化、低功耗化
1 市場(chǎng)呼喚輕量級(jí)的數(shù)據(jù)中心加速器 數(shù)據(jù)中心加速器雖然不像機(jī)器學(xué)習(xí)推理加速聽起來那么熱門,卻是非常實(shí)用的后端加速的服務(wù),能幫助數(shù)據(jù)中心的客戶節(jié)約大量成本。
本文引用地址:http://2s4d.com/article/201908/403477.htm
當(dāng)前,一方面市場(chǎng)需要更小的加速器,另一方面也需要不僅能加速計(jì)算,而且還可加速網(wǎng)絡(luò)和存儲(chǔ),并能兼容第四代PCIe(PCIe Gen 4),具有HBM(高帶寬存儲(chǔ)器),有高速網(wǎng)絡(luò)連接等功能。為此,在美國加州圣克拉拉舉辦“閃存峰會(huì)(Flash Memory Summit (FMS) 2019”期間,賽靈思祭出了新一代產(chǎn)品Alveo U50加速器卡,展示了其在高速存儲(chǔ)系統(tǒng)加速上的應(yīng)用。
為此,賽靈思數(shù)據(jù)中心業(yè)務(wù)部產(chǎn)品規(guī)劃和市場(chǎng)營銷總監(jiān)Jamon Bowen向電子產(chǎn)品世界等媒體介紹了U50的設(shè)計(jì)與應(yīng)用考量。
照片:賽靈思數(shù)據(jù)中心業(yè)務(wù)部產(chǎn)品規(guī)劃和市場(chǎng)營銷總監(jiān)Jamon Bowen
Alveo U50是小型化和低功耗產(chǎn)品,可謂業(yè)界首款可以支持第四代PCIe的輕量級(jí)自適應(yīng)計(jì)算加速卡,與此前賽靈思Alveo加速器相比,U50的尺寸只有1/8,功耗只有1/3,但性能依然強(qiáng)大,可大幅加速各種不同的關(guān)鍵計(jì)算、網(wǎng)絡(luò)和存儲(chǔ)工作負(fù)載而設(shè)計(jì)。
? 為何U50的功耗能夠更低、尺寸更???
這主要是通過HBM來實(shí)現(xiàn)的,因?yàn)樵摯鎯?chǔ)器技術(shù)不僅僅有高帶寬,同時(shí)還可以放在芯片之外,所以這是一種非常核心的技術(shù)。在賽靈思芯片上,有一個(gè)控制器能夠和HBM進(jìn)行對(duì)話,通過這種方式不僅可以縮小Alveo的尺寸,而且還能夠提升Alveo的性能,所以歸根到底就是賽靈思芯片技術(shù)的發(fā)展,賽靈思又把這種發(fā)展應(yīng)用到了新的U50產(chǎn)品中。
2 計(jì)算的未來趨勢(shì)
下圖是賽靈思的一個(gè)合作伙伴開發(fā)的存儲(chǔ)盒解決方案,前端是以太網(wǎng),后端是固態(tài)硬盤(SSD)。這里加速IP和存儲(chǔ)幾乎放在了同一個(gè)空間里,所以這非常有意思:沒有CPU了,而是加速器和它的外圍直接連到這個(gè)網(wǎng)絡(luò)上。
由于未來數(shù)據(jù)中心的驅(qū)動(dòng)是異構(gòu)計(jì)算,所以沒必要和系統(tǒng)連在同一個(gè)地方,即執(zhí)行的處理器和高性能的深度學(xué)習(xí)、存儲(chǔ)和加速等,沒必要進(jìn)行本地連接,可以做異地連接。
例如金融領(lǐng)域的應(yīng)用,采用賽靈思U50,能在很短的時(shí)間內(nèi)實(shí)現(xiàn)從獲取市場(chǎng)的數(shù)據(jù)到最后執(zhí)行交易;與之相比的是CPU,這個(gè)時(shí)間可能剛剛才能夠進(jìn)行CPU內(nèi)存的對(duì)話??梢奤50方案的速度大大提高了,也預(yù)示著未來數(shù)據(jù)中心一種布局的趨勢(shì)。
現(xiàn)在Alveo的產(chǎn)品有兩種應(yīng)用,一種是接X86處理器,還有一種是接存儲(chǔ)。第二種接存儲(chǔ)方案里,也是有一個(gè)具體的加速任務(wù),而且另一端也是連著一個(gè)服務(wù)器,所以U50采用插件式的連接,通過連接服務(wù)器來解決其他可能不是通用于FPGA軟件方面的問題。
? U50擴(kuò)展了Alveo數(shù)據(jù)中心加速卡組合
“Alveo U50進(jìn)一步擴(kuò)展了Alveo數(shù)據(jù)中心加速器卡產(chǎn)品組合?!盝amon指出。之前的Alveo U280等主要是計(jì)算領(lǐng)域比較強(qiáng),例如可以利用在一些基因組測(cè)序/醫(yī)學(xué)領(lǐng)域;U50在計(jì)算方面稍微弱一點(diǎn),但是它在聯(lián)網(wǎng)和存儲(chǔ)方面會(huì)更強(qiáng)一些。
回顧一下歷史,Alveo加速器卡是2018年10月首次推出的,當(dāng)時(shí)推出的Alveo U200 和 Alveo U250,同年11月,賽靈思又推出了U280。這三款產(chǎn)品的定位均是數(shù)據(jù)中心和AI,用來大幅提升云端和本地?cái)?shù)據(jù)中心中業(yè)界標(biāo)準(zhǔn)服務(wù)器的性能。
再回到Alveo U50卡,U50盡管輕量、小型,但是性能毫不遜色。由于采用賽靈思 UltraScale+?架構(gòu),率先使用半高半長(zhǎng)的外形尺寸和低于75 W的低包絡(luò)功耗。該卡支持高帶寬存儲(chǔ)器 (HBM2),每秒100G 網(wǎng)絡(luò)連接,并支持第四代 PCIe 和 CCIX 互聯(lián)標(biāo)準(zhǔn)。通過支持標(biāo)準(zhǔn)的 PCIe 服務(wù)器插槽和僅相當(dāng)于現(xiàn)有 Alveo 卡1/3的功耗, Alveo U50大幅擴(kuò)展了自適應(yīng)加速技術(shù)可以部署的范圍,從而為要求嚴(yán)苛的計(jì)算、網(wǎng)絡(luò)與存儲(chǔ)工作負(fù)載帶來了前所未有的高吞吐量與低延時(shí)。8GB HBM2 提供了超過 400 Gbps 的數(shù)據(jù)傳輸速度, QSFP端口提供了高達(dá)100 Gbps的網(wǎng)絡(luò)連接。此外,高速網(wǎng)絡(luò)I/O還支持各種前沿應(yīng)用,如NVMe-oF?解決方案(NVM Express over Fabrics?),解耦計(jì)算存儲(chǔ)和專業(yè)金融服務(wù)應(yīng)用。
3 數(shù)據(jù)中心為什么要用加速器?
所有的計(jì)算工作負(fù)載都是這三個(gè)領(lǐng)域:計(jì)算、網(wǎng)絡(luò)和存儲(chǔ)。Alveo靈活應(yīng)變的加速技術(shù)也用于數(shù)據(jù)中心的這三個(gè)領(lǐng)域。
3.1 為什么要加速?
現(xiàn)在的總體趨勢(shì)是越來越多的應(yīng)用需要領(lǐng)域?qū)S玫募軜?gòu),使得硬件和算法匹配,以達(dá)到最佳運(yùn)行效果或提高運(yùn)行速度。
具體地,現(xiàn)在網(wǎng)絡(luò)上有很多不同的數(shù)據(jù),但是這些數(shù)據(jù)在運(yùn)行過程中的要求是不一樣的。現(xiàn)在的網(wǎng)絡(luò)可能和下一代網(wǎng)絡(luò)不一樣,和下下一代的網(wǎng)絡(luò)就更加不同了。所以此時(shí)就需要硬件能夠跟上這些領(lǐng)域?qū)S眉軜?gòu)的要求,同時(shí)還要提升它的性能,使得硬件能夠發(fā)揮其最優(yōu)的功能。
3.2 為何加速器的運(yùn)行速度能大幅改善?
若要優(yōu)化性能,首先要有定制的數(shù)據(jù)路徑,還要有定制的精度。此后,應(yīng)用才能夠非常順利地進(jìn)行處理,而無需不斷地去進(jìn)入到一些存儲(chǔ)的層級(jí)/去經(jīng)過一些非常復(fù)雜的流程,就能夠進(jìn)行直接的處理。賽靈思在這方面能夠給硬件加速,可以通過再編程的方式來調(diào)整一些設(shè)置。
3.3 靈活性和高性能
數(shù)據(jù)中心客戶最大的抱怨是器件編程非常困難,為此,Alveo簡(jiǎn)化了硬件編程程序。Alveo有一個(gè)非常開放的平臺(tái)和環(huán)境。最主要的一些解決方案涵蓋的領(lǐng)域包括數(shù)據(jù)分析、視頻與圖象處理、機(jī)器學(xué)習(xí)、生命科學(xué)和金融計(jì)算,可見有非常廣泛的客戶和伙伴。賽靈思在上面也加入了很多IP和驅(qū)動(dòng)來支持合作伙伴和開發(fā)者的有關(guān)活動(dòng)。
3.4 擴(kuò)大云的覆蓋面:延伸至邊緣
對(duì)于企業(yè)和用戶來說,非常重要的是如果他們要部署一項(xiàng)新技術(shù),就必須要了解有關(guān)上云的途徑,所以賽靈思U50技術(shù)不僅僅支持云,還能夠支持本地;而且這種覆蓋還在不斷的擴(kuò)張。在中國,BAT(百度、阿里巴巴、騰訊)等都越來越多地采用這種靈活的IP。
而且Alveo的生態(tài)系統(tǒng)是希望能夠開發(fā)一個(gè)全堆棧的解決方案,所以自Alveo推出不到一年的時(shí)間,現(xiàn)在已經(jīng)有很多的生態(tài)合作伙伴推出了基于Alveo的解決方案,例如自從Alveo于2018年10月推出以來,現(xiàn)已發(fā)布的應(yīng)用已是那時(shí)的2倍,而賽靈思培訓(xùn)的開發(fā)者已是那時(shí)的4倍。
另外,因?yàn)橘愳`思的產(chǎn)品是非常商業(yè)化的,而且是現(xiàn)成的標(biāo)準(zhǔn)化的產(chǎn)品,包括驅(qū)動(dòng),所以能夠調(diào)動(dòng)整個(gè)IT界的積極性,讓他們和Alveo的開源框架進(jìn)行連接。例如用Alveo的產(chǎn)品可以直接使用Kubernetes和docker的產(chǎn)品。
這是因?yàn)锳lveo是非常標(biāo)準(zhǔn)化的產(chǎn)品,所以在Kubernetes中可以直接有插件,另外開發(fā)者也可以把Alveo和docker配合起來使用。如果沒有這樣一個(gè)標(biāo)準(zhǔn)化的產(chǎn)品配置,客戶可能需要花費(fèi)大量的投資才能實(shí)現(xiàn)這樣一個(gè)功能。所以這對(duì)于一些超大規(guī)模數(shù)據(jù)中心的應(yīng)用是非常有必要的,既可以在云端,也可以用Alveo在本地進(jìn)行加速,而且是一個(gè)非常開放式的框架,可以進(jìn)行全面的加速。
4 U50的應(yīng)用案例
主要圍繞計(jì)算、網(wǎng)絡(luò)和存儲(chǔ)三個(gè)方面。
4.1 計(jì)算/加速
4.1.1 語音翻譯的計(jì)算負(fù)載
從Alveo U50和CPU、GPU在語音翻譯加速功能的比較來看,Alveo U50最重要的一個(gè)實(shí)現(xiàn)的特征是它的高吞吐量和低時(shí)延的推斷性能,對(duì)于這個(gè)應(yīng)用來說,這兩個(gè)特點(diǎn)是非常重要的。因?yàn)樵谶@個(gè)領(lǐng)域當(dāng)中,用到的機(jī)器學(xué)習(xí)和之前的神經(jīng)網(wǎng)絡(luò)使用的是不一樣的,而這正是Alveo U50的優(yōu)勢(shì)所在。
如上圖,賽靈思的Alveo U50 和英偉達(dá)T4 相比,性能提升高達(dá)10倍。
U50能用于很多不同的網(wǎng)絡(luò)。機(jī)器學(xué)習(xí)的推斷還要求更低的時(shí)延推斷來支持這樣的案例,而且要求硬件能夠支持這樣的推斷,還要離數(shù)據(jù)源非常近。U50的尺寸小,對(duì)于需要在同城提供服務(wù)數(shù)據(jù)中心的運(yùn)行也是非常重要的一個(gè)解決方案,所以賽靈思U50的小尺寸非常契合需要邊緣計(jì)算的用例場(chǎng)景。
4.1.2 數(shù)據(jù)庫分析
主要是用于商業(yè)信息分析的領(lǐng)域。下圖是數(shù)據(jù)庫查詢加速運(yùn)行的TPC-H Query5體系,主要是一些商業(yè)營銷決定的決策查詢或者咨詢建議。
很多企業(yè)會(huì)面臨這樣的決策:他們有一個(gè)很龐大的數(shù)據(jù)庫,里面有很多供應(yīng)商,有很多的產(chǎn)品,也有很多的銷售數(shù)據(jù)。他們需要每個(gè)季度要有這樣的決策,需要來了解哪個(gè)產(chǎn)品在第一季度例如銷售數(shù)額有多少,其降價(jià)策略推銷是否真正有效,所以這是非常重要的一個(gè)商業(yè)界經(jīng)常會(huì)用到的場(chǎng)景。在這個(gè)加速過程當(dāng)中,會(huì)用到很多的標(biāo)簽節(jié)點(diǎn),會(huì)列出很多有關(guān)的表格,然后進(jìn)行具體的查詢。在每一個(gè)節(jié)點(diǎn)對(duì)帶寬的要求都是非常高的,而帶寬又是順利加速的關(guān)鍵節(jié)點(diǎn)。
在這里做了一個(gè)比較,采用的是一臺(tái)沒有加速的英特爾最先進(jìn)的多核處理器XEON系列的產(chǎn)品。結(jié)果顯示,U50的處理速度提升高達(dá)4倍,而且由于U50卡尺寸非常小,可以使用多張卡的式,如果1張卡能夠達(dá)到4倍數(shù),加2張就是8倍,如果加3張就是12倍。因?yàn)樗某叽绶浅P。钥梢赃M(jìn)行多倍數(shù)的加速。
4.1.3 金融
金融界很多地方需要建模,這樣才能定合約和證券的價(jià)格。通常是有非常大量的數(shù)據(jù)輸入,之后做幾百萬的模擬,最后得出一個(gè)平均值,得到一個(gè)結(jié)果的范圍來確定在最糟糕的情況下,它的風(fēng)險(xiǎn)什么樣的。
在此進(jìn)行對(duì)比,相比英偉達(dá)第一版GPU和英特爾的CPU,如下圖可見,U50是CPU性能的20倍。另外,U50的成本只有GPU的一半。
U50之所以能夠?qū)崿F(xiàn)這樣高效的加速,因?yàn)橘愳`思一直在開發(fā)計(jì)算庫,尤其是量化的開發(fā)者能夠在Alveo當(dāng)中使用這些數(shù)據(jù)函數(shù)進(jìn)行最優(yōu)化的編碼,同時(shí)能夠在我們這個(gè)平臺(tái)上完成其他的應(yīng)用設(shè)計(jì),建立這樣一個(gè)模型。這個(gè)對(duì)于計(jì)算加速來說是非常重要的擴(kuò)展,尤其能夠把所有的數(shù)學(xué)函數(shù)都吸收進(jìn)來。
4.2 網(wǎng)絡(luò)案例
? 電子貿(mào)易業(yè)務(wù):網(wǎng)絡(luò)中的時(shí)延關(guān)鍵型業(yè)務(wù)
金融領(lǐng)域是一個(gè)完全不同的應(yīng)用領(lǐng)域,就是要用技術(shù)來支持交易。在這方面,在你獲得關(guān)鍵市場(chǎng)數(shù)據(jù)信息,做出計(jì)算,然后做出決定之間,這樣的時(shí)間差對(duì)于金融界是至關(guān)重要的。所以金融界有從技術(shù)到交易的衡量指標(biāo),就是看你獲得市場(chǎng)數(shù)據(jù)之后,直到下單完成交易之間需要花費(fèi)多長(zhǎng)時(shí)間。
如果使用賽靈思的U50,就可以在不到500 ns的時(shí)間內(nèi),完成過程是:首先收到市場(chǎng)數(shù)據(jù),然后用綜合的C語言來寫一個(gè)交易邏輯,再對(duì)這樣的交易邏輯進(jìn)行執(zhí)行和回應(yīng)。
如果用CPU,第一步首先要從網(wǎng)絡(luò)上把這個(gè)數(shù)據(jù)放入到界面的接口,然后進(jìn)行緩存,如果是單向的話,耗時(shí)約400 ns。接下來,數(shù)據(jù)進(jìn)去之后,數(shù)據(jù)的運(yùn)行環(huán)境首先要發(fā)出信號(hào),說明這個(gè)運(yùn)行環(huán)境發(fā)生了變化。然后這個(gè)網(wǎng)絡(luò)再把信息進(jìn)行解碼,從用戶轉(zhuǎn)變?yōu)楹诵模缓笤侔阉鼈鬏斀o需要執(zhí)行交易的部分。而且整個(gè)過程需要不斷持續(xù),才能使交易的邏輯轉(zhuǎn)為核心,然后再給其他有關(guān)的各端。而整個(gè)過程大概需要10 ms。
U50在時(shí)間上是CPU的20倍——U50所有所需時(shí)間對(duì)于CPU來說僅僅只夠完成將數(shù)據(jù)進(jìn)入到CPU內(nèi)存層級(jí)第一步的時(shí)間,而時(shí)延在這個(gè)領(lǐng)域是非常關(guān)鍵的一個(gè)決勝因素。
而且賽靈思加速卡對(duì)于整個(gè)成本是非常固定的。而且這種應(yīng)用一般是在證券交易所數(shù)據(jù)中心里,所以U50的小尺寸在這方面擁有非常好的優(yōu)勢(shì),能夠順利接入到這樣的數(shù)據(jù)中心。
由上例可見,若使用Alveo進(jìn)行加速,能夠在很多網(wǎng)絡(luò)端口完成應(yīng)用的加速,而所需的時(shí)間往往是CPU剛開始進(jìn)行對(duì)話的時(shí)間,所以對(duì)于很多的數(shù)據(jù)中心來說,這是非常重要的。
4.3 存儲(chǔ)
4.3.1 計(jì)算存儲(chǔ)
計(jì)算存儲(chǔ)現(xiàn)在越來越重要,而且有這樣一個(gè)趨勢(shì):讓計(jì)算離存儲(chǔ)越來越近。因?yàn)楝F(xiàn)在固態(tài)硬盤使存儲(chǔ)越來越多地能夠?qū)崿F(xiàn)高吞吐量和低時(shí)延,在過去由于存儲(chǔ)在這方面存在瓶頸,是不能這樣做的。
如上圖是一個(gè)非常典型的存儲(chǔ)工作負(fù)載。過去很多字節(jié)都需要一系列傳輸?shù)某绦虿拍苓M(jìn)行處理,有非常復(fù)雜的流程,例如要去壓縮、解壓,還要進(jìn)行數(shù)據(jù)保護(hù),諸如加密、解密,這里使用的是一個(gè)GZIP壓縮吞吐量的指標(biāo)。
因?yàn)槊總€(gè)字節(jié)都要經(jīng)過這樣的流程,所以加速的帶寬至關(guān)重要的。U50的PCIe第四代技術(shù)在這方面大放異彩,可以實(shí)現(xiàn)相比CPU 20倍的改善。
4.3.2 整體應(yīng)用加速
一個(gè)典型例子是Hadoop。如果來看Hadoop的大小,首先看數(shù)據(jù),還有查詢數(shù)據(jù)的工作量,它對(duì)于帶寬來說提出了很高的要求。如果要做高性能的計(jì)算,首先這個(gè)數(shù)據(jù)沒法去壓縮,但是這樣的話,基礎(chǔ)設(shè)施就需要擴(kuò)大1倍,而且還需要更多的存儲(chǔ)和存儲(chǔ)帶寬。如果是用U50,就可以非常順利地進(jìn)行壓縮,而且還可以在高帶寬的環(huán)境下來完成,這樣你就沒有必要選擇到底要進(jìn)行壓縮,還是保留帶寬,這兩者之間并不是說只能二選一了。因?yàn)榭梢赃M(jìn)行壓縮,壓縮之后,所需的存儲(chǔ)空間只有原來的一半,帶寬的需求也只有原來的一半。所以有了這樣的加速之后,我們看到部署的成本可能只有原來的1/2;而且不僅僅可以進(jìn)行壓縮,同時(shí)還可以確保它的性能不會(huì)受到影響。
圖:2個(gè)雙CPU服務(wù)器vs搭載兩個(gè)Alveo U50的Alveo服務(wù)器
現(xiàn)在看到越來越多的使用單插頭的場(chǎng)景,一個(gè)非常好的組合是AMD處理器再加上賽靈思的加速器,來取代CPU雙插頭的組合。
那么一個(gè)問題是:壓縮的過程和加速好像是矛盾的方式,壓縮數(shù)據(jù)的流程是賽靈思自己的技術(shù)嗎?Jamon解釋道,上圖左邊這個(gè)壓縮僅僅是CPU完成的,在右邊這個(gè)壓縮是把數(shù)據(jù)發(fā)送到Alveo內(nèi)部,然后再發(fā)到存儲(chǔ)的設(shè)備當(dāng)中,所以這是由硬件加速的壓縮。所以賽靈思確實(shí)是在用Alveo U50做GZIP這樣壓縮的加速。二者相較,有一個(gè)是可以通過壓縮來大大提高吞吐量,另一個(gè)根本無法進(jìn)行壓縮,因?yàn)樗俣忍恕K匀绻麤]有Alveo U50進(jìn)行加速,就必須要在成本和吞吐量之間做出選擇,要么不能去壓縮,但是如果有了Alveo U50,就能夠進(jìn)行非常迅速的加速。
5 與友商相比的優(yōu)勢(shì):靈活應(yīng)變
異構(gòu)計(jì)算應(yīng)該是數(shù)據(jù)中心的未來,很多公司也在擁抱加速架構(gòu)為核心的解決方案,U50不僅僅能夠提供硬件的加速,而且它還是靈活應(yīng)變的——因?yàn)锳lveo不僅僅能做到硬件的加速,而且還是可以編程,可以重新配置。例如GZIP壓縮,但是壓縮的技術(shù)也是日新月異的,發(fā)展很快,例如有ZS、ZT、LZ,還有超大規(guī)??蛻舭l(fā)布一些新的壓縮算法,還有微軟2019年發(fā)布了Zipline開放標(biāo)準(zhǔn)的壓縮算法。賽靈思的優(yōu)勢(shì)是能夠在硬件層面上進(jìn)行加速,還能夠在硬件層面上實(shí)現(xiàn)可編程,如果出現(xiàn)了一些新標(biāo)準(zhǔn)的變化,其他競(jìng)爭(zhēng)對(duì)手都是做不到的。一旦有了新的標(biāo)準(zhǔn)計(jì)算算法迭代之后,賽靈思就能夠充分利用 FPGA 的靈活性,在我們平臺(tái)上迅速部署。
6 小結(jié)
Alveo U50是Alveo產(chǎn)品系列一個(gè)非常重要的擴(kuò)展,也是首款專門為計(jì)算、網(wǎng)絡(luò)和存儲(chǔ)打造的自適應(yīng)加速器,能夠面向任何服務(wù)器,為任何云打造。
在性能上與TCO(總擁有成本)方面,U50可以將吞吐量、時(shí)延和功耗效率改善很多倍,也是首款用PCIe Gen 4支持HBM2與100 Gbps網(wǎng)絡(luò)端口的產(chǎn)品。
此外,賽靈思有不斷壯大的生態(tài)和平臺(tái)。
評(píng)論