算力爆炸的時代,復(fù)雜計算充滿挑戰(zhàn),對硬件靈活可編程性要求也越來越高。計算架構(gòu)走到異構(gòu)的今天,矛盾也凸顯——單一處理器無法兼顧性能和靈活性。
而超大規(guī)模計算集群和復(fù)雜系統(tǒng)讓超異構(gòu)計算成為了可能,何出此言?超異構(gòu)計算又到底是什么?從芯片龍頭企業(yè)的產(chǎn)品布局上我們能發(fā)現(xiàn)什么?傳統(tǒng)的計算架構(gòu)發(fā)展又遭遇哪些瓶頸?
在12月6日芯智庫【相約芯期二】第27期的“汽車芯片智能駕艙在線研討會”上,上海矩向科技CEO黃朝波帶來主題為“從英偉達 Thor,看大芯片發(fā)展趨勢”的演講。 ? 以下是黃朝波的分享: ? 我給大家分享的是“從英偉達Thor,看大芯片的發(fā)展趨勢”,當(dāng)然它有更專業(yè)點的名字叫“超異構(gòu)計算,新一代計算架構(gòu)”。 ? 我的介紹大概分為5個部分,第一部分對一些沒有計算機相關(guān)基礎(chǔ)的讀者做一些基本的介紹;第二部分探討下計算架構(gòu)面臨的挑戰(zhàn);第三部分就是介紹超異構(gòu)相關(guān)的趨勢案例,里面主要包含了英偉達和高通的案例;第四部分討論下為什么現(xiàn)在會出現(xiàn)這個概念,而不是過去或者以后;最后部分介紹下我們認為未來會出現(xiàn)單芯片的整體解決方案,也就是我們稱之為超異構(gòu)處理器。 ? ? 01? ?算力提升不僅是芯片? ? ? 先簡單介紹下馮·諾依曼架構(gòu)。我們一切系統(tǒng)的運行是可以歸一到計算的,計算系統(tǒng)是由輸入、計算和輸出三部分組成,這個架構(gòu)就是馮·諾依曼架構(gòu),非常的簡單。現(xiàn)在行業(yè)內(nèi)有很多號稱打破馮·諾依曼架構(gòu)的系統(tǒng),但背后邏輯都是遵照馮·諾依曼架構(gòu)的指導(dǎo)思想,嚴格來說不存在打破的說法。 ?
? 然后是摩爾定律?;?a target="_blank">CPU的摩爾定律真的已經(jīng)到了極限,雖然說我們現(xiàn)在晶體管的提升也是慢慢到了一個極限,但是如果我們把摩爾定律當(dāng)做一個KPI的話,那么對行業(yè)來說它又是一個非常重要的路線圖,大家需要持續(xù)不斷地提升性能,所以說對于計算性能的追求其實是永無止境的。 ? 另外,再簡單介紹下軟件和硬件。首先,指令是軟件和硬件之間的媒介,那么指令的復(fù)雜度決定了這個軟硬件的解耦程度。ISA(指令集架構(gòu))之下,CPU、GPU等各種處理器是硬件;ISA之上,各種程序、數(shù)據(jù)集、文件等是軟件。 ?
? 按照指令的復(fù)雜度,典型的處理器平臺大致分為CPU、協(xié)處理器、GPU、FPGA、DSA、ASIC。從左往右,單位計算越來越復(fù)雜,性能越來越好,而靈活性越來越低。任務(wù)在CPU運行,則定義為軟件運行;任務(wù)在協(xié)處理器、GPU、FPGA、DSA或ASIC運行,則定義為硬件加速運行。 ? 我們現(xiàn)在是一個萬物互聯(lián)的時代,從云端的集中式超大規(guī)模服務(wù)器,然后到邊緣端的小規(guī)模數(shù)據(jù)中心,再到終端的各種豐富多彩的設(shè)備,那么整個萬物互聯(lián)大概來說就分為這三個層次。 ? 通常來說,終端是歸于我們現(xiàn)實世界的一個接入層,它是整個大系統(tǒng)的一個I/O,然后負責(zé)現(xiàn)實世界和虛擬世界的交互,那么云端是最終任務(wù)的處理,邊緣端通常來說是作為云端的一個代理,為終端去提供服務(wù)的,因此我們可以根據(jù)云邊端將計算節(jié)點分類。 ? 終端我們把它分為四類:IoT節(jié)點、IoT設(shè)備、智能終端、超級終端。云端分為三類:服務(wù)器、服務(wù)、用戶業(yè)務(wù)運行環(huán)境。邊緣分為兩類:代理運行平臺、近云端及近終端運行環(huán)境。 ?
? 我們最終要宏觀地去提升這些設(shè)備共同的算力,不能簡單地只提升一個設(shè)備的性能,那是沒有意義的。因為每一個設(shè)備如果只是一個孤島的話,這些東西沒法連成一個大的資源池是沒有意義的,所以基于此,我們把這些統(tǒng)一起來,我們把微觀層次作為單芯片性能,宏觀層次就是整體的算力利用率。 ?
? 這樣的話,想提升算力,它僅僅是提升芯片的性能肯定是不夠的,那就需要各方面全方位的優(yōu)化。我們可以簡單地把它作為一個公式,實際總算力與單芯片性能、數(shù)量、利用率相關(guān),特別是后面兩個參數(shù),我們做芯片的可能不太關(guān)注,但這兩塊的作用又很關(guān)鍵。 ? ?
02? ?計算架構(gòu)面臨的挑戰(zhàn)? ? ? 計算架構(gòu)最開始是單核處理器,然后走向了多核,計算從串行走向了并行。 ? 再往后走,我們從同構(gòu)并行到了異構(gòu)并行,異構(gòu)并行通常分為三類:基于GPU、基于FPGA、基于DSA。 ? 這些異構(gòu)并行都需要外掛一個CPU來控制,所以本質(zhì)上異構(gòu)并行就是CPU+XPU的形態(tài),像最典型的就是GPU服務(wù)器。GPU并行計算性能效率比CPU高,并且場景覆蓋較多,CUDA生態(tài)成熟。但性能效率比ASIC/DSA仍有很大差距;對一些輕量級異構(gòu)加速場景,獨立GPU顯得太重。 ? 復(fù)雜計算,通俗易懂的講,就是需要支持虛擬化,支持多租戶多系統(tǒng)運行的這些計算場景。在云計算、邊緣計算以及一些超級終端的復(fù)雜計算場景,對靈活性的要求遠高于對性能的要求。 ? 也就是說通常情況下,如果CPU能夠滿足性能要求,大家一定是不希望用各種加速器。但對算力的需求不斷增加,有時候不得不通過各種異構(gòu)加速方式進行性能優(yōu)化。實踐證明,在復(fù)雜計算場景,提升性能的同時,不能損失通用靈活性。 ? 最后我們總結(jié)一下異構(gòu)計算存在的問題。系統(tǒng)越復(fù)雜,需要選擇越靈活的處理器;性能挑戰(zhàn)越大,需要選擇越偏向定制的加速處理器。 ? 本質(zhì)矛盾是:單一處理器無法兼顧性能和靈活性;即使我們拼盡全力平衡,也只“治標不治本”。 ? CPU+XPU異構(gòu)計算中的XPU,決定了整個系統(tǒng)的性能/靈活性特征。GPU靈活性較好,但性能效率不夠極致;DSA性能好,但靈活性差,難以適應(yīng)復(fù)雜計算場景對靈活性的要求;FPGA功耗和成本高,需要一些定制開發(fā),落地案例不多;ASIC功能完全固定,難以適應(yīng)靈活多變的復(fù)雜計算場景。 ? 這就是目前的一個現(xiàn)狀。還有另外一個原因就在于計算孤島的問題。異構(gòu)計算面向某個領(lǐng)域或場景,領(lǐng)域之間的交互困難。服務(wù)器物理空間有限,無法多個物理加速卡,需要把這些加速方案整合。整合,不是簡單的拼湊,而是要架構(gòu)重構(gòu)。 ?
? 此外,我們所說的云網(wǎng)邊端融合也面臨著挑戰(zhàn)。云網(wǎng)邊端,算力需求不斷提高,系統(tǒng)復(fù)雜度不斷提高,對硬件的靈活可編程性要求也越來越高。微服務(wù)可自適應(yīng)地在云、網(wǎng)、邊、端運行,需要云數(shù)據(jù)中心內(nèi)部,以及跨云邊端的硬件平臺一致性。需要芯片、系統(tǒng)、框架和庫、以及上層應(yīng)用的多方協(xié)同。 ? ?
03? 什么是超異構(gòu)計算? ? ?
那么下一步,我們認為是持續(xù)往前走向超異構(gòu),為什么這件事情能夠存在? ? 我們認為有幾個原因使得超異構(gòu)成為可能。那么首先一點就是超大規(guī)模的計算集群,其次是復(fù)雜宏系統(tǒng),是由分層分塊的組件(系統(tǒng))組成。單服務(wù)器的宏系統(tǒng)復(fù)雜度,以及超大規(guī)模的云和邊緣計算,使得“二八定律”在系統(tǒng)中普遍存在:把相對確定的任務(wù)沉淀到基礎(chǔ)設(shè)施層,相對彈性的沉淀到彈性加速部分,其他繼續(xù)放在CPU(CPU兜底)。 ?
? 把更多的異構(gòu)計算整合重構(gòu),各類型處理器間充分的、靈活的數(shù)據(jù)交互,形成超異構(gòu)計算。未來就會有三個和三個以上類型的處理引擎,共同組成超異構(gòu)并行。 ? 接下來我們介紹一些案例,首先是英特爾提出的超異構(gòu)相關(guān)概念。當(dāng)它提出來之后,并沒有給出來完整的一個產(chǎn)品,反而是在超異構(gòu)概念周邊做了很多工作,最終我覺得會有很完整的東西出來。 ? 2019年,英特爾提出超異構(gòu)計算相關(guān)概念:XPU是架構(gòu)組合,包括CPU、GPU、FPGA 和其他加速器;OneAPI是開源的跨平臺編程框架,底層是不同的XPU處理器,通過OneAPI提供一致性編程接口,使得應(yīng)用跨平臺復(fù)用。 ? 就是說我任何一個應(yīng)用,我既可以在CPU運行,又可以在GPU運行,又可以在專用的ASIC上運行,通過OneAPI就可以跨不同的處理器平臺,就可以自適應(yīng)的去在平臺上也有不同的計算資源。 ? 再說說英特爾的IPU,英特爾IPU跟現(xiàn)在市面上比較火爆的DPU是一個概念。 ?
? 我們對英特爾的超異構(gòu)計算進行一個總結(jié),那它有CPU、GPU、FGPA,以及DSA和ASIC所組成的IPU,并且有了這個跨平臺,也就是它所謂的XPU戰(zhàn)略和oneAPI框架,最終把它整合成一個大芯片, ?
(上圖為Atlan架構(gòu)示意圖,Atlan和Thor同架構(gòu)) ? 我們再來看英偉達Thor,這里很關(guān)鍵,為什么是數(shù)據(jù)中心架構(gòu)?它所使用CPU、GPU、DPU跟數(shù)據(jù)中心里面用的架構(gòu)一模一樣,區(qū)別僅僅在于規(guī)格的不同,比方說數(shù)據(jù)中心可能有50個核,在終端可能用到30個核。 ? 超級終端與傳統(tǒng)終端最大的區(qū)別在于:支持虛擬化,支持多系統(tǒng)運行,支持微服務(wù)。手機、平板、個人電腦等傳統(tǒng)AP是一個系統(tǒng):部署好OS,上面運行各種應(yīng)用,軟件附屬于硬件而存在。自動駕駛等超級終端,需要通過虛擬化將硬件切分成不同規(guī)格,供不同形態(tài)的多個系統(tǒng)運行,并且各個系統(tǒng)之間需要做到環(huán)境、應(yīng)用、數(shù)據(jù)、性能、故障、安全等方面的隔離。 ? 再然后看一下英偉達在數(shù)據(jù)中心的布局,NVIDIA Grace Hopper超級芯片是CPU+GPU,NVIDIA計劃從Bluefield DPU四代起,把DPU和GPU兩者集成單芯片。Chiplet技術(shù)逐漸成熟,未來趨勢是CPU+GPU+DPU的超異構(gòu)芯片。 ? 為什么顯而易見?這里面有英偉達自己的一個說法,我把這個進行了一個總結(jié)。首先,計算和網(wǎng)絡(luò)不斷融合:計算面臨很多挑戰(zhàn),需要網(wǎng)絡(luò)的協(xié)同;網(wǎng)絡(luò)設(shè)備也是計算機,加入計算集群,成為計算的一部分。 ?
? 數(shù)據(jù)在網(wǎng)絡(luò)中流動,計算節(jié)點依靠數(shù)據(jù)流動來驅(qū)動計算。所有系統(tǒng)的本質(zhì)是數(shù)據(jù)處理,那么所有的設(shè)備就都是DPU。以DPU為基礎(chǔ),不斷融合CPU和GPU的功能,DPU會逐漸演化成數(shù)據(jù)中心統(tǒng)一的超異構(gòu)處理器。 ?
? 我們再來看高通。高通在手機端是很厲害的存在,往汽車域控制上發(fā)展也會有先天優(yōu)勢,但如果以最終的超級單芯片來講,相對于英偉達還是有點劣勢的。 ? ?
04? 如何駕馭超異構(gòu)計算? ? ?
接下來討論下,為什么現(xiàn)在才提超異構(gòu)這個概念。這里面其實有很多原因,我們總結(jié)了大概4個部分,第一個首先是業(yè)務(wù)需求驅(qū)動,現(xiàn)在軟件新應(yīng)用層出不窮,兩年一個新熱點;并且,已有的熱點技術(shù)仍在快速演進。
? 第二點,元宇宙是繼互聯(lián)網(wǎng)和移動互聯(lián)網(wǎng)之后的下一個互聯(lián)網(wǎng)形態(tài),元宇宙需要源源不斷的“算力能源”。要想實現(xiàn)元宇宙級別的體驗,需將算力提升1000倍。受限于算力瓶頸,許多元宇宙的美好設(shè)想難以落地:沉浸感所需的16K效果,需要280.7Gbps帶寬。目前的算力基礎(chǔ)設(shè)施,還難以達到這么高數(shù)據(jù)量的傳輸、處理和存儲;宏觀AI算力需要數(shù)量級提升:①支撐單個數(shù)字人的AI算力需求急速增長;②元宇宙快速發(fā)展,數(shù)字人的數(shù)量猛增。 ? 第三點,就是工藝在進步,那么這里有一個非常有優(yōu)勢的技術(shù)。Chiplet使得在單芯片層次,可以構(gòu)建規(guī)模數(shù)量級提升的超大系統(tǒng)。系統(tǒng)越大,超異構(gòu)的優(yōu)勢越明顯。 ? 第四點,異構(gòu)編程很難,超異構(gòu)編程更是難上加難。該如何更好的駕馭超異構(gòu)?我們給出的解決方案是軟硬件融合。軟硬件融合從以下幾個方面入手: ? 性能和靈活性。單引擎平衡,多引擎兼顧。 可編程及易用性。利用系統(tǒng)的特征,軟件無縫卸載, 實現(xiàn)“軟件定義一切,硬件加速一切”。 產(chǎn)品的彈性。滿足用戶需求,還需要滿足不同用戶差異化的需求,以及用戶需求的快速迭代。 ? 通過軟硬件融合,實現(xiàn)大芯片的通用性(靈活性、可編程性、易用性以及彈性等特征的集合): 覆蓋更多的用戶、更多的場景和更長期的迭代; 適配復(fù)雜宏系統(tǒng)的快速變化; 實現(xiàn)芯片的大規(guī)模落地。 ? ? 05? ?超異構(gòu)計算的未來? ? ? 最后我們介紹一下,最終落地的到底是個什么東西? ? 在這里我們需要說一下,圖靈獎獲得者John H.和David P. 2017年提出“計算機體系結(jié)構(gòu)的黃金年代”,給出的解決方案是特定領(lǐng)域架構(gòu)DSA。 ?
? 我們認為,DSA架構(gòu)分離的趨勢導(dǎo)致平臺和生態(tài)碎片化,未來正確的趨勢應(yīng)該是從分離再回到融合。 ? 也就是將目前CPU、GPU、DPU進行整合,我們把它叫做GP-HPU,那么可能大家就會有一個疑問,這不就是SOC嗎? ?
? 它的確是把整個系統(tǒng)放到了一個基本面上,但是他跟我們傳統(tǒng)的SOC有很多不同。 ?
? 最后展望一下,超異構(gòu)更加廣泛的應(yīng)用領(lǐng)域。 ?
? 那么通常來說一開始做的相對小一些,它用在邊緣是比較合適的,但隨著擴展,那么未來用在這個數(shù)據(jù)中心里面,或者自動駕駛上??缭凭W(wǎng)邊端融合,需要計算架構(gòu)的統(tǒng)一。通用HPU優(yōu)勢:更多功能復(fù)用,更多場景覆蓋,跨平臺架構(gòu)統(tǒng)一。 ? ?
編輯:黃飛
?
評論
查看更多