0
本文作者: 量衡 | 2021-12-21 14:59 | 專題:GAIR 2021 |
雷峰網(wǎng)按:2021年12月9日-2021年12月11日,2021第六屆全球人工智能大會(huì)(GAIR 2021)于深圳正式召開。歷經(jīng)五年,見證數(shù)次潮水的轉(zhuǎn)向,成為目前為止粵港澳大灣區(qū)人工智能領(lǐng)域規(guī)模最大、規(guī)格最高的學(xué)術(shù)、工業(yè)和投資領(lǐng)域跨界盛會(huì)。
GAIR 2021 “集成電路高峰論壇:國產(chǎn)高端芯片之路”,集聚來自學(xué)術(shù)界、產(chǎn)業(yè)界和投資界的15位大咖,探討了國產(chǎn)高端芯片的實(shí)力以及RISC-V帶給中國芯片的機(jī)會(huì)。
大禹智芯CTO王昕溥帶來了《從DPU看DSA發(fā)展》主題分享。作為國內(nèi)首家專注于提供 DPU 產(chǎn)品和服務(wù)的公司,大禹智芯團(tuán)隊(duì)有著深厚云計(jì)算場景的軟硬件開發(fā)經(jīng)驗(yàn)。本次演講,王昕溥從軟件人員的角度,分享了當(dāng)年DSA的經(jīng)驗(yàn),以及對(duì)DPU發(fā)展的思考。
大禹智芯CTO王昕溥↑
以下是王昕溥在GAIR2021上的演講內(nèi)容,雷峰網(wǎng)(公眾號(hào):雷峰網(wǎng))對(duì)其進(jìn)行了不改變?cè)獾木庉嬚恚?/strong>
與DSA的第一次接觸可以追溯到大約十年前,某互聯(lián)網(wǎng)頭部企業(yè)的底層技術(shù)架構(gòu)剛開始建設(shè)就遇到在國內(nèi)沒有先例的情況。當(dāng)時(shí)的互聯(lián)網(wǎng)還處于較早期,所有的網(wǎng)站還是HTTP的,這導(dǎo)致涉及到交易的業(yè)務(wù)很容易被攻擊,為了提高安全性,全站HTTPS的網(wǎng)站因此而建立。當(dāng)時(shí)在國內(nèi)這是先例,也因此遇到了別人沒有遇到的問題。HTTPS建立連接過程中的非對(duì)稱加密算法會(huì)消耗大量的CPU計(jì)算資源,這是我們當(dāng)時(shí)面臨的主要挑戰(zhàn)。
早期互聯(lián)網(wǎng)企業(yè)數(shù)據(jù)中心網(wǎng)關(guān)用的是國外廠商的專用設(shè)備,它們?cè)诮鉀QRSA算法方面性能表現(xiàn)優(yōu)良,但也存在一些缺點(diǎn):第一個(gè)是擴(kuò)展性很差,遠(yuǎn)遠(yuǎn)跟不上互聯(lián)網(wǎng)業(yè)務(wù)的發(fā)展速度;第二是成本非常高,不利于后續(xù)的規(guī)?;瘮U(kuò)展。
在面對(duì)這個(gè)問題時(shí),第一步的解決方案是采用標(biāo)準(zhǔn)的方法,即用標(biāo)準(zhǔn)的X86服務(wù)器運(yùn)行軟件,通過這種方式替換掉硬件設(shè)備。實(shí)際效果比較好,可以用四臺(tái)服務(wù)器替換掉一臺(tái)專用設(shè)備,擴(kuò)展性提高很多。但隨著業(yè)務(wù)規(guī)模的不斷發(fā)展,這樣的架構(gòu)就遇到了性能瓶頸,隨之將導(dǎo)致機(jī)器規(guī)模增長過快,這從成本和運(yùn)維工作量上都是不可接受的。
所以當(dāng)時(shí)找到頭部芯片廠商定義了一個(gè)新的芯片,生產(chǎn)了一個(gè)新的板卡,這就是后來的QAT。在芯片廠商定制芯片的基礎(chǔ)上,我們做了大量的軟件開發(fā)工作,從最上層用的NGINX到OpenSSL庫,把算法函數(shù)拆成完全異步化,才能把任務(wù)分發(fā)到下面的硬件上去。同時(shí)OpenSSL庫本來是一個(gè)單線程的庫,但因?yàn)橛布莻€(gè)多核產(chǎn)品,所以需要將其改成并行化的庫,才能把整個(gè)硬件的性能完全發(fā)揮出來。再往下是板卡本身的驅(qū)動(dòng)層,大家一起在這條路徑上做了大量的軟件開發(fā)工作,最終圓滿完成任務(wù)。
雖然當(dāng)時(shí)我們沒有從芯片視角看待這個(gè)問題,更多是軟件人員的視角、軟硬件結(jié)合的視角來理解,但從今天的視角看,這個(gè)從需求到定義再到上線的完整過程,就是典型的專用領(lǐng)域芯片的案例。
革命性的新硬件對(duì)計(jì)算機(jī)具有帶動(dòng)性發(fā)展作用,如CPU、多核、多隊(duì)列到后來的IOMMU。同時(shí),IDC帶寬則從百兆向千兆、萬兆到現(xiàn)在的100G發(fā)展。這些發(fā)展隨之而來給軟件帶來非常大的挑戰(zhàn):如何把硬件的性能發(fā)揮到極致就是軟件人員要做的事情。
在我們剛工作的時(shí)候,網(wǎng)絡(luò)處理方面有一個(gè)很著名的問題——C10K,就是“怎么在一臺(tái)服務(wù)器上處理并發(fā)10000個(gè)連接”。這在當(dāng)時(shí)帶動(dòng)了軟件的一股潮流,主要代表就是用事件驅(qū)動(dòng)模型代替線程池模型。幾年后就變成C10M的問題,規(guī)模又有了1000倍的增長。而當(dāng)中最典型的技術(shù)如DPDK,使用更多直接操作硬件的資源,軟件也在不斷地更新。到這個(gè)階段,僅靠純軟件已經(jīng)沒辦法完成目標(biāo),所以業(yè)界陸續(xù)出現(xiàn)通過硬件加速實(shí)現(xiàn)成熟算法的解決方案,如網(wǎng)卡、硬件加速的芯片,通過硬件化實(shí)現(xiàn)加密解密、拆包解包、拆封裝、解封裝等功能。
但仍然有一些無法實(shí)現(xiàn)成功硬件化的例子,比如說TCP/IP協(xié)議。其實(shí),有不少人在做TCP/IP協(xié)議硬件化方案——TOE方案,但因?yàn)榉桨笩o法固定下來,一直沒有在這方面形成潮流。一方面是因?yàn)門CP/IP協(xié)議的復(fù)雜度,而主因則在于人們還在不停地改善它,甚至想要推翻它。
芯片領(lǐng)域和計(jì)算機(jī)架構(gòu)體系有很多定律在說類似的事情。比如說貝爾定律——每隔十年就有一波新技術(shù)的創(chuàng)新;牧村定律——每隔十年芯片的研發(fā)都會(huì)在標(biāo)準(zhǔn)化和定制化之間波動(dòng)。而我們今天還面臨一些更復(fù)雜的情況,例如國產(chǎn)化的浪潮,這也是幾十年的機(jī)遇,在這個(gè)過程中,需要我們更多地自主掌握關(guān)鍵技術(shù),共同推進(jìn)國產(chǎn)化浪潮的前進(jìn)。
之前我分享的例子,在當(dāng)時(shí)對(duì)業(yè)界產(chǎn)生了一定的影響。最直接的影響是專用設(shè)備開始退出互聯(lián)網(wǎng)公司的IDC市場,轉(zhuǎn)向?qū)W⒂诜?wù)銀行和企事業(yè)單位,并且在2019年進(jìn)行軟件服務(wù)轉(zhuǎn)型。OpenSSL庫的patch被社區(qū)所接受,變成專用的加密算法offload接口,芯片廠商也繼續(xù)豐富和增加它的性能,現(xiàn)在已經(jīng)不是專門的芯片和板卡,而是被集成在CPU里面,逐漸變得通用化。
為此,對(duì)于專用領(lǐng)域芯片,我們認(rèn)為有幾個(gè)未來的發(fā)展方向:
一是從實(shí)際需求出發(fā),由場景使用方的客戶提出定制需求,芯片等硬件廠商按照客戶需求定義、設(shè)計(jì)和生產(chǎn)芯片,加快芯片商業(yè)化落地的速度;作為客戶來說,只要能夠符合需求,就一定會(huì)投入使用,這對(duì)硬件研發(fā)來講是一個(gè)很大的保證。
二是重視軟件,發(fā)展生態(tài)。從正面說,因?yàn)槲覀冞M(jìn)行了大量的軟件開發(fā)工作,才能夠?qū)⒂布褂闷饋?。從反面來講,沒有軟件研發(fā)能力,即使已經(jīng)有了成功案例,仍然可能沒辦法使用一些專用的芯片或者硬件。
三是現(xiàn)在做專用領(lǐng)域芯片都會(huì)面臨的問題,是適用面定義寬窄之間的選擇。以FPGA為例,互聯(lián)網(wǎng)公司曾經(jīng)設(shè)有大規(guī)模團(tuán)隊(duì)做FPGA優(yōu)化AI算法,但市面推出新的GPU后,團(tuán)隊(duì)就被解散了,這也是專用領(lǐng)域芯片面臨的一個(gè)典型問題:因?yàn)閼?yīng)用領(lǐng)域比較窄,可能技術(shù)紅利期短,可能整體的效益少,也可能還趕不上研發(fā)投入,最后沒有實(shí)現(xiàn)大規(guī)模應(yīng)用。
而說了以上幾點(diǎn)后,接下來我講一下大禹智芯為什么要做DPU。DPU是非常新的東西, 它是專注于對(duì)流動(dòng)數(shù)據(jù)進(jìn)行處理的芯片。大禹智芯成立于去年6月份,當(dāng)初下決心做DPU的時(shí)候,聽說和了解DPU的人還很少。作為云計(jì)算出身的團(tuán)隊(duì),我們是國內(nèi)最早嘗試DPU產(chǎn)品的一批人,DPU廠商定義芯片的時(shí)候都跟我們進(jìn)行了很多的探討。但當(dāng)我們拿到產(chǎn)品后發(fā)現(xiàn)使用效果遠(yuǎn)未達(dá)到預(yù)期甚至不可用,主要原因就是上面定義的軟件架構(gòu)是硬件公司想象出來的客戶需求,不是我們想要的。
鑒于上述過往的經(jīng)歷,大禹智芯選擇從使用者的角度,從上到下定義DPU產(chǎn)品,缺少什么環(huán)節(jié)就補(bǔ)足什么環(huán)節(jié),缺少軟件就做軟件,缺少硬件就做板卡,如果沒有合適的芯片就定義合適的芯片。因此,在我們自研芯片還沒有出來之前就推出了兩代的自研DPU產(chǎn)品,通過這兩代產(chǎn)品為芯片定義積累場景和經(jīng)驗(yàn),同時(shí)為不同場景用戶的使用創(chuàng)造和提供價(jià)值。
另外,DPU的關(guān)鍵還在于軟件。作為硬件,它對(duì)軟件的依賴要超過很多硬件產(chǎn)品。DPU不同于如網(wǎng)卡的硬件,后者驅(qū)動(dòng)對(duì)上就能用,上層的事情都被驅(qū)動(dòng)和協(xié)議棧操作系統(tǒng)屏蔽掉。而DPU會(huì)承載用戶大量的業(yè)務(wù)需求,如云計(jì)算方面的網(wǎng)絡(luò)虛擬化、存儲(chǔ)虛擬化、對(duì)服務(wù)器的管理和安全管控等任務(wù),所以DPU對(duì)軟件要求很高。
另外,得益于芯片產(chǎn)業(yè)上下游的發(fā)展和提升,DSA芯片的門檻在降低,專用領(lǐng)域的芯片設(shè)計(jì)難度相比通用芯片較低。把芯片定義準(zhǔn)確,再依靠上下游力量,相關(guān)技術(shù)公司是完全有能力研發(fā)出一款成功的專用領(lǐng)域芯片。
從市場需求來看,互聯(lián)網(wǎng)上的帶寬每六個(gè)月翻一番,遠(yuǎn)遠(yuǎn)快于摩爾定律CPU每18個(gè)月翻一番的速度,而且現(xiàn)在摩爾定律也不能跟上這個(gè)速度,市場亟需DPU這種負(fù)責(zé)處理流動(dòng)的數(shù)據(jù)讓網(wǎng)絡(luò)加速的產(chǎn)品,DPU也可以理解為應(yīng)時(shí)代所需而出現(xiàn)的創(chuàng)新型硬件。
我們認(rèn)為,DPU將會(huì)扮演更重要的角色,像CPU和GPU一樣是開創(chuàng)時(shí)代的創(chuàng)新型硬件,并長久地發(fā)展下去。DPU不僅局限在大規(guī)模云計(jì)算和數(shù)據(jù)中心,云計(jì)算也不是DPU唯一的場景,未來的5G和邊緣計(jì)算領(lǐng)域也同樣重要,和云計(jì)算一起并列的三大場景,DPU一定會(huì)有更多的市場機(jī)會(huì)。
在最后,針對(duì)于十年前的案例,我做一些補(bǔ)充。當(dāng)年在找芯片硬件廠商合作前,市面上有一款專用的現(xiàn)成產(chǎn)品可以滿足業(yè)務(wù)場景的需求。但是因?yàn)閮r(jià)格太高,無法大規(guī)模采購,才選擇了合作定義新的芯片。這是一個(gè)產(chǎn)品滿足需求,但最終卻沒有進(jìn)入市場的例子。
而之前跟芯片廠商合作的QAT在這兩年也不再被互聯(lián)網(wǎng)大廠所使用,不是因?yàn)镼AT性能滿足不了需求,而是因?yàn)樾枨笠呀?jīng)消失。在過去的Web端時(shí)代,瀏覽器產(chǎn)生很多新建請(qǐng)求,尤其是新建請(qǐng)求握手時(shí)會(huì)有大量算法需求。但在如今的移動(dòng)端時(shí)代,手機(jī)APP僅需維持一兩個(gè)長連接,無需太多新建請(qǐng)求。而新版的SSL協(xié)議,算法要求也有很大變化,對(duì)RSA非對(duì)稱加密沒那么多需求, CPU就可以滿足對(duì)應(yīng)需求。這時(shí)候QAT發(fā)揮的作用就大大降低。
當(dāng)下是一個(gè)非常好的時(shí)代。從牧村定律來看,專用芯片都開始蓬勃發(fā)展;大家希望能夠出現(xiàn)一款貝爾定律中開啟下一個(gè)時(shí)代的硬件產(chǎn)品,這可能是5G,或是別的產(chǎn)品,我們也堅(jiān)信會(huì)出現(xiàn)這樣的硬件。在如今大的產(chǎn)業(yè)背景之下,國產(chǎn)化也迎來了新開端,在結(jié)合各種定律和周期,讓做軟件、做應(yīng)用的人也積極加入芯片行業(yè)的隊(duì)伍中,一起為國產(chǎn)芯片的發(fā)展做一些自己的貢獻(xiàn),這也必將助力國產(chǎn)化之路新浪潮的形成。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。
本專題其他文章