近些年,隨著數(shù)據(jù)量暴漲,以及業(yè)務(wù)形式的多樣化,特別是各種創(chuàng)新業(yè)務(wù)模式的推出,各家互聯(lián)網(wǎng)大廠都遇到了同樣的難題:買不到適用的服務(wù)器處理器及相關(guān)芯片。最早遇到這類問題的是谷歌(Google),為了解決應(yīng)用需求,該公司不得不建立了自己的芯片研發(fā)團(tuán)隊(duì),專門為自家的設(shè)備定制處理器,大名鼎鼎的TPU就是這樣誕生的。
作為全球第二大互聯(lián)網(wǎng)市場(chǎng),中國(guó)也遇到了當(dāng)初Google遇到的問題,無論是阿里,還是騰訊,都開啟了芯片自研之路。
如今,同樣的問題落在了字節(jié)跳動(dòng)身上。
本周,字節(jié)跳動(dòng)確認(rèn)了一則傳聞:為了滿足該公司旗下TikTok的應(yīng)用需求,字節(jié)跳動(dòng)已計(jì)劃聘用專家,為其數(shù)據(jù)中心開發(fā)SoC,以處理某些特定的工作負(fù)載。字節(jié)跳動(dòng)已在其網(wǎng)站上發(fā)布了31個(gè)與芯片相關(guān)的職位,以組成團(tuán)隊(duì)與芯片開發(fā)商合作。至此,字節(jié)跳動(dòng)正式開啟自研芯片之路。
字節(jié)跳動(dòng)副總裁楊震原表示,除了采購x86架構(gòu)CPU,該公司也會(huì)與芯片供應(yīng)商探索RISC架構(gòu)芯片在云端的應(yīng)用。字節(jié)跳動(dòng)的自研芯片探索將主要圍繞自身的視頻推薦業(yè)務(wù)展開,為大規(guī)模推薦服務(wù)場(chǎng)景定制硬件優(yōu)化方案,比如視頻編解碼,云端推理加速等,以提升效率、降低成本。
也就是說,傳統(tǒng)x86架構(gòu)CPU已經(jīng)不能滿足TikTok的視頻推薦業(yè)務(wù),因?yàn)檫@種業(yè)務(wù)具有很強(qiáng)的創(chuàng)新性,這也是TikTok很快風(fēng)靡全球的主要原因。從我們普通抖音用戶的實(shí)際體驗(yàn)也可以感受到,不用去找,抖音會(huì)根據(jù)用戶的個(gè)人喜好,主動(dòng)推薦相應(yīng)的短視頻,以形成非常強(qiáng)的用戶粘性。雖然傳統(tǒng)CPU具有AI推理能力,但其在海量大數(shù)據(jù)面前,信息處理速度慢的短板暴露無遺,這就需要具備快速處理大數(shù)據(jù),且AI智能化水平比較高的處理器,再加上TikTok的視頻屬性,還需要有很好的視頻編解碼能力。放眼當(dāng)下全球芯片廠商,能夠完全滿足這些條件的處理器SoC,還沒有看到。當(dāng)然,傳統(tǒng)芯片廠商也并非無所作為,幾年前,以英偉達(dá)、賽靈思為代表的廠商就已經(jīng)開始了這方面的研發(fā)工作,這些年火爆的DPU(Data Processing Unit)和智能網(wǎng)卡,很大程度上就是為了滿足這類的大數(shù)據(jù)處理和AI智能化需求,但這些努力還在進(jìn)行當(dāng)中,要想完全滿足各大互聯(lián)網(wǎng)廠商的需求,還需要時(shí)間去打磨。正是在這樣的背景下,字節(jié)跳動(dòng)開啟了自研芯片之路。
先驅(qū)Google
前文提到,在互聯(lián)網(wǎng)大廠中,最先遇到處理器瓶頸,并自研相關(guān)芯片的就是Google,研發(fā)的產(chǎn)品名為TPU(Tensor Processing Unit,張量處理器),這是一種專用集成電路(ASIC),是專門為Google的TensorFlow框架(一個(gè)符號(hào)數(shù)學(xué)庫,用于機(jī)器學(xué)習(xí)應(yīng)用程序,如神經(jīng)網(wǎng)絡(luò))設(shè)計(jì)的,用于加速機(jī)器學(xué)習(xí)。從2015年開始,Google就已經(jīng)在內(nèi)部使用TPU,主要為其云基礎(chǔ)架構(gòu)服務(wù),據(jù)悉,在Google相冊(cè)中,單個(gè)TPU每天可以處理超過1億張照片。與GPU不同,TPU主要用于進(jìn)行大量的低精度計(jì)算(如8位精度),每焦耳功耗下的輸入/輸出操作更多。當(dāng)然,除了TPU,Google也會(huì)采用傳統(tǒng)的CPU和GPU,用于其它類型的機(jī)器學(xué)習(xí)處理。
目前,TPU已經(jīng)發(fā)展到了第四代,算力不斷提升。
在視頻處理方面,Google也遇到了問題,那就是傳統(tǒng)的英特爾通用CPU數(shù)據(jù)處理能力已經(jīng)難以滿足YouTube上海量視頻的處理要求,對(duì)此,Google專門自研了Argos視頻編碼器(VCU),據(jù)悉,它的視頻處理能力非常高效,取代了數(shù)千萬個(gè)英特爾CPU。在需要處理海量數(shù)據(jù)的時(shí)候,相對(duì)于傳統(tǒng)CPU,專用ASIC優(yōu)勢(shì)非常明顯,VCU就是這樣的ASIC。
在YouTube上,每分鐘內(nèi),用戶會(huì)以各種格式上傳超過500小時(shí)的視頻內(nèi)容,Google需要快速將內(nèi)容轉(zhuǎn)碼為多種分辨率(包括144p,240p,360p,480p,720p,1080p,1440p,2160p和4320p)和高效格式(例如H.264,VP9或AV1),這需要強(qiáng)大的編碼能力。
傳統(tǒng)上,對(duì)于視頻的轉(zhuǎn)碼/編碼,Google有兩種選擇:一是英特爾的視覺計(jì)算加速器(VCA),它將三個(gè)Xeon(至強(qiáng))E3 CPU、內(nèi)置Iris Pro P6300 / P580 GT4e的集成GPU,以及硬件編碼器集成在了一起;二是使用軟件編碼和英特爾Xeon處理器。
Google認(rèn)為,對(duì)于不斷壯大的YouTube工作負(fù)載來說,以上這兩種選擇都不夠節(jié)能,且數(shù)據(jù)中心需要占用更多空間,于是自研了VCU。
第一代Argos VCU并沒有完全取代英特爾CPU,因?yàn)榉?wù)器仍然需要運(yùn)行操作系統(tǒng)并管理存儲(chǔ)驅(qū)動(dòng)器和網(wǎng)絡(luò)連接。VCU類似于一個(gè)GPU,需要一個(gè)CPU配合工作。
除了內(nèi)部設(shè)計(jì)的編碼/轉(zhuǎn)碼器外,VCU的大多數(shù)IP都是從第三方獲得的,以降低開發(fā)成本。VCU將盡可能多的高性能編碼/轉(zhuǎn)碼器集成在一個(gè)芯片上(同時(shí)保持高能效)。Google將兩個(gè)VCU放在一塊板上,每個(gè)雙插槽英特爾Xeon服務(wù)器安裝10張卡,這大大提高了每個(gè)機(jī)架的解碼/轉(zhuǎn)碼性能。
Google表示,與采用英特爾Skylake處理器的服務(wù)器系統(tǒng)相比,基于VCU的設(shè)備在性能/TCO(系統(tǒng)總體擁有成本)計(jì)算效率方面提高了7倍(H.264)和33倍(VP9),這里考慮到了VCU的成本和三年的運(yùn)營(yíng)費(fèi)用。從Google給出的性能數(shù)據(jù)來看,在進(jìn)行H.264編解碼時(shí),單個(gè)Argos VCU幾乎不比雙向英特爾Skylake服務(wù)器快,但是,由于可以將20個(gè)VCU安裝到一個(gè)服務(wù)器中,其效率更高。當(dāng)進(jìn)行VP9編解碼時(shí),VCU比英特爾的雙插槽Xeon快5倍,效率優(yōu)勢(shì)明顯。
之所以說了這么多Google自研芯片的內(nèi)容,就是要說明:字節(jié)跳動(dòng)要自研芯片,大概率是遇到了上面提到的、Google曾經(jīng)遇到的這些問題。TikTok的數(shù)據(jù)中心需要支持各種業(yè)務(wù),包括視頻平臺(tái)、信息和娛樂應(yīng)用,需要開發(fā)視頻編解碼SoC來對(duì)用戶上傳的海量視頻流進(jìn)行處理,同時(shí),為了進(jìn)一步降低數(shù)據(jù)中心的功耗和存儲(chǔ)容量,還需要更高效的AI算法及相關(guān)硬件。
全行業(yè)跟進(jìn)
海量數(shù)據(jù)+視頻流處理需求是近些年各大廠商研發(fā)新型處理器的核心動(dòng)力,不止Google和字節(jié)跳動(dòng)這些互聯(lián)網(wǎng)大廠,傳統(tǒng)處理器(CPU、GPU、FPGA等)大廠也在不遺余力地進(jìn)行著研發(fā)工作,因?yàn)槭袌?chǎng)有巨大需求。
以DPU為例,這是近些年最火爆的詞語了,英偉達(dá)是行業(yè)大佬,也有一眾廠商在這一賽道上摸爬滾打。
DPU是以數(shù)據(jù)為中心構(gòu)造的專用處理器,采用軟件定義技術(shù)支撐基礎(chǔ)設(shè)施層資源虛擬化,支持存儲(chǔ)、安全、服務(wù)質(zhì)量管理等服務(wù)。2020年,英偉達(dá)發(fā)布的DPU戰(zhàn)略中將其定位為數(shù)據(jù)中心繼CPU和GPU之后的“第三顆主力芯片”,掀起了一波行業(yè)熱潮。DPU面向的應(yīng)用更加底層,要解決的核心問題是基礎(chǔ)設(shè)施的降本增效,即將CPU處理效率低下、GPU處理不了的負(fù)載交由專用DPU處理,從而提升整個(gè)計(jì)算系統(tǒng)的效率、降低TCO。
DPU最直接的作用是作為CPU的卸載引擎,接管網(wǎng)絡(luò)虛擬化、硬件資源池化等基礎(chǔ)設(shè)施層服務(wù),釋放CPU的算力到上層應(yīng)用。以網(wǎng)絡(luò)協(xié)議處理為例,要線速處理10G的網(wǎng)絡(luò)需要大約4個(gè)Xeon CPU核,也就是說,單是做網(wǎng)絡(luò)數(shù)據(jù)包處理,就可以占去一個(gè)8核高端CPU一半的算力。如果考慮40G、100G的高速網(wǎng)絡(luò),性能開銷就更加難以承受了。而將數(shù)據(jù)中心開銷全部從CPU卸載到DPU加速卡上,可以給上層應(yīng)用釋放可觀的算力。
此外,DPU還可以成為新的數(shù)據(jù)網(wǎng)關(guān),以提升隱私安全級(jí)別,DPU也可以成為存儲(chǔ)的入口,將分布式存儲(chǔ)和遠(yuǎn)程訪問本地化。
雖然DPU與前文提到的Google和字節(jié)跳動(dòng)自研芯片有所差異,但它們?cè)诒举|(zhì)上都是相同的,都是為了解決傳統(tǒng)CPU和GPU難以承受的海量數(shù)據(jù)處理難題。目前來看,它們與傳統(tǒng)CPU和GPU能夠?qū)崿F(xiàn)很好的互補(bǔ),在需要高性能的海量數(shù)據(jù)處理能力時(shí),則用專用的DPU等ASIC,而平時(shí)需要靈活處理的指令則是CPU的專長(zhǎng)。
另外,基于FPGA的智能網(wǎng)卡在近些年也有快速發(fā)展,它為大型互聯(lián)網(wǎng)企業(yè)的大數(shù)據(jù)、高帶寬通信帶來了更多、更好的選擇,賽靈思在這方面很有一套。2018年,該公司將“數(shù)據(jù)中心優(yōu)先(Datacenter First)”作為其全新發(fā)展戰(zhàn)略。發(fā)布了Alveo系列加速卡產(chǎn)品,旨在大幅提升云端和本地?cái)?shù)據(jù)中心服務(wù)器性能。2019 年4月,該公司收購Solarflare通信公司,將FPGA、MPSoC和ACAP解決方案與 Solarflare 的超低時(shí)延網(wǎng)絡(luò)接口卡(NIC)技術(shù),以及應(yīng)用加速軟件相結(jié)合,實(shí)現(xiàn)了全新的SmartNIC解決方案。這些,或許是AMD決定對(duì)其進(jìn)行收購的重要原因。
除了英偉達(dá)和賽靈思,CPU霸主英特爾也沒閑著,該公司于2015年收購了Altera,在通用處理器的基礎(chǔ)上,進(jìn)一步完善硬件加速能力。
2021 年6月,該公司發(fā)布了IPU(可以視其為英特爾版本的DPU),將FPGA與Xeon D系列處理器集成,成為了DPU賽道有力的競(jìng)爭(zhēng)者。IPU是具有強(qiáng)化的加速器和以太網(wǎng)連接的高級(jí)網(wǎng)絡(luò)設(shè)備,它使用緊密耦合、專用的可編程內(nèi)核加速和管理基礎(chǔ)架構(gòu)功能。
另外,Marvall發(fā)布了OCTEON 10 DPU產(chǎn)品,不僅具備強(qiáng)大的轉(zhuǎn)發(fā)能力,還具有突出的AI處理能力。
當(dāng)然,研發(fā)類似TPU和DPU產(chǎn)品的不止以上這些廠商,目前,越來越多的業(yè)內(nèi)廠商在加大這方面的投入力度,以期在未來的競(jìng)爭(zhēng)中占得先機(jī)。
中國(guó)廠商不甘人后
在自研處理器方面,中國(guó)各大互聯(lián)網(wǎng)企業(yè)都很積極,早在字節(jié)跳動(dòng)之前,阿里、騰訊、百度都有行動(dòng)。例如,阿里擁有自己的AI推理芯片和通用處理器,百度有昆侖AI處理器,騰訊有適用于各種云工作負(fù)載的處理器。
以騰訊為例,該公司的自研芯片之路,是從拿FPGA試水開始的,2015年,騰訊團(tuán)隊(duì)研發(fā)的圖片編碼FPGA,取得了比CPU編碼和軟件編碼更高的壓縮率和更低的延時(shí),也幫助QQ相冊(cè)大幅降低了存儲(chǔ)成本。他們看到了在 FPGA 方向探索和深入的可能性,2016 年,通過FPGA對(duì)深度學(xué)習(xí)模型CNN算法進(jìn)行加速后,處理性能達(dá)到通用CPU的4倍,而單位成本僅為三分之一。
那之后,騰訊在自研芯片方面取得了多個(gè)成果,代表作是蓬萊實(shí)驗(yàn)室的AI推理芯片紫霄和視頻轉(zhuǎn)碼芯片滄海,它們有望于今年實(shí)現(xiàn)量產(chǎn)。
2019 年,騰訊迎來云計(jì)算業(yè)務(wù)上的里程碑——云服務(wù)器規(guī)模突破了 100 萬。隨著服務(wù)器接入帶寬不斷提升,服務(wù)器用于網(wǎng)絡(luò)處理的CPU資源也越來越多,能否以更低成本的方式來實(shí)現(xiàn)服務(wù)器網(wǎng)絡(luò)處理,同時(shí)還提供更高的網(wǎng)絡(luò)性能?答案是智能網(wǎng)卡。該公司制定了“先從基于FPGA自研智能網(wǎng)卡起步,再開展智能網(wǎng)卡芯片研發(fā)”的發(fā)展路線。
2020年9月,騰訊第一代基于FPGA的自研智能網(wǎng)卡正式上線,命名為水杉。
水杉投入應(yīng)用后,第二代智能網(wǎng)卡銀杉的研發(fā)工作于2021年10月正式上線,這一代智能網(wǎng)卡的網(wǎng)絡(luò)端口翻了一番,達(dá)到2*100G,基于此,騰訊云推出了業(yè)界首款自研第六代100G云服務(wù)器。它的計(jì)算性能最大提升220%、存儲(chǔ)性能最大提升100%。單節(jié)點(diǎn)接入網(wǎng)絡(luò)帶寬相比上一代最大提升4倍,延時(shí)下降50%。
目前,騰訊正在研發(fā)其首款智能網(wǎng)卡芯片玄靈,采用7nm制程工藝,預(yù)計(jì)在2022年底流片。據(jù)悉,玄靈的性能相對(duì)商業(yè)芯片可提升4倍,通過將原來運(yùn)行在主機(jī)CPU上的虛擬化、網(wǎng)絡(luò)/存儲(chǔ) IO等功能卸載到芯片,可實(shí)現(xiàn)主機(jī)CPU的0占用。
不止騰訊,阿里和百度都有各自的芯片研發(fā)故事,這里就不一一贅述了。
中國(guó)大陸系統(tǒng)廠商(互聯(lián)網(wǎng)和設(shè)備廠商)自研芯片,也不全是商業(yè)原因,有的是受到國(guó)際貿(mào)易限制,市場(chǎng)上有可用芯片,但買不到。
無論是阿里、騰訊、百度,還是字節(jié)跳動(dòng),他們自研芯片,主要與Google類似,市場(chǎng)上沒有滿意的芯片,而華為則有些不同,該公司2005年就開始布局自研芯片,主要考慮的是有朝一日如果受到國(guó)際貿(mào)易限制,能夠有自家芯片頂上,從而掌握主動(dòng)權(quán)。2019年之后,多年擔(dān)心的事情還是發(fā)生了,但無奈的是,雖然華為的芯片研發(fā)能力很強(qiáng),但由于中國(guó)大陸芯片制造能力有限,設(shè)計(jì)出了高端芯片,制造端受限后,造不出來,非常遺憾。
因此,國(guó)際大廠(如Google)自研芯片,完全出于商業(yè)原因,而中國(guó)大陸系統(tǒng)廠商自研芯片,原因更多,苦難更深。