可重構(gòu)/異構(gòu)計(jì)算正當(dāng)紅 會(huì)是國產(chǎn)芯片快速發(fā)展的機(jī)會(huì)嗎?
掃描二維碼
隨時(shí)隨地手機(jī)看文章
在傳統(tǒng)CPU以外,現(xiàn)在業(yè)界又興起了可重構(gòu)計(jì)算的風(fēng)潮。近期Intel便與清華簽訂了合作協(xié)議,號稱將結(jié)合Intel在處理器上的優(yōu)勢與清華在可重構(gòu)計(jì)算上的前沿成果研發(fā)下一代芯片,并共享知識產(chǎn)權(quán)。而前陣子又有號稱全球首款完全支持異構(gòu)系統(tǒng)架構(gòu)的“華夏芯”橫空出世,一時(shí)間異構(gòu)計(jì)算和可重構(gòu)計(jì)算的概念讓人眼花繚亂。在國產(chǎn)芯加速前進(jìn)的背景下,異構(gòu)計(jì)算和可重構(gòu)計(jì)算會(huì)是國產(chǎn)芯的機(jī)會(huì)嗎?
通用計(jì)算與可重構(gòu)/異構(gòu)計(jì)算的聯(lián)系和區(qū)別
要想看清楚新概念,就要先明了老概念??芍貥?gòu)/異構(gòu)計(jì)算到底新穎在哪里,要首先看看它們的同伴“通用計(jì)算”。
所謂通用計(jì)算,就是追求普適性的覆蓋面。在這個(gè)理念下誕生的芯片從功能上來講擁有最廣闊的適用范圍,最典型的例子就是今天的中央處理器(CPU)芯片,絕大多數(shù)應(yīng)用程序的絕大部分功能依賴于它。
一般來說,CPU的設(shè)計(jì)是面向所有應(yīng)用,評估CPU的性能指標(biāo)時(shí)通常需要選取門類龐雜的各種測試程序,同時(shí)只為極少的重點(diǎn)應(yīng)用加上一定程度的專門優(yōu)化,例如時(shí)下熱門的加密解密,視音頻編解碼等等。
與通用計(jì)算相對的就是專用計(jì)算,專門針對一些場合進(jìn)行專門優(yōu)化,性能/功耗等指標(biāo)通常比通用CPU有數(shù)量級的提高,但是適用面很窄,在規(guī)定的適用面以外就遠(yuǎn)遠(yuǎn)落后于CPU。
通用和專用的關(guān)系就如同什么都懂一些但是基本上什么都不精的“通才”,和在個(gè)別領(lǐng)域鉆研極深但是其他領(lǐng)域幾乎一無所知的“偏才”。
在CPU的技術(shù)指標(biāo)增長逐步放緩的今天,若要提供更好的表現(xiàn),一個(gè)直觀的點(diǎn)子就是物盡其用,讓“偏才”處理它最擅長的事情,并招來多種專長不同的“偏才”來照顧多種重點(diǎn)事務(wù),其他事情則交給“通才”去完成。一個(gè)系統(tǒng)里面存在一個(gè)“通才”和多種“偏才”,這就是異構(gòu)計(jì)算,是通用計(jì)算和專用計(jì)算的“合體進(jìn)化“。
那么可重構(gòu)計(jì)算是什么?讓芯片擁有重構(gòu)自身的能力,從而能像干細(xì)胞一樣一身才藝,能夠適應(yīng)各種不同場合的需要,這就是可重構(gòu)計(jì)算。
這一概念的歷史至少可以追溯到上世紀(jì)80年代,xilinx設(shè)計(jì)出第一塊基于SRAM的可重構(gòu)芯片的時(shí)候。這種芯片里面的基本器件和線路上都配置了大量的開關(guān),這些開關(guān)的關(guān)斷由與之相連的SRAM單元來控制,只要往這些SRAM單元里面寫入0和1就能控制這些組件的開關(guān)和連通,從而像搭積木一樣在原來不存在計(jì)算部件的地方拼出大量按需定制的計(jì)算部件,使得計(jì)算性能產(chǎn)生爆發(fā)性的變化。這種芯片被稱為FPGA,被廣泛用于CPU流片前的驗(yàn)證工作。
那么可重構(gòu)計(jì)算和通用計(jì)算\專用計(jì)算又是什么關(guān)系呢?看上去可重構(gòu)計(jì)算可以替代通用計(jì)算,實(shí)則不然。由于FPGA芯片底層實(shí)現(xiàn)方式的限制,這種由SRAM控制組織結(jié)構(gòu)的做法在性能上遠(yuǎn)遠(yuǎn)落后基于ASIC的CPU,只有在一些特定場合下,F(xiàn)PGA才能夠?qū)崿F(xiàn)反超,因此,可重構(gòu)計(jì)算便落入了專用計(jì)算的范疇,與異構(gòu)計(jì)算同列。它和異構(gòu)計(jì)算雖然起源不同,但是二者眼下的目標(biāo)在很大程度上是重疊的,也就是,從傳統(tǒng)通用計(jì)算的霸主——CPU嘴里搶食。
群雄割據(jù)的亂局:通用碰撞專用,CPU碰撞加速器/FPGA
眾所周知,Intel在CPU上的優(yōu)勢已經(jīng)形成事實(shí)上的壟斷,x86指令集授權(quán)和Intel的技術(shù)優(yōu)勢讓其他公司已經(jīng)很難染指CPU市場。而大家瞄準(zhǔn)的突破口,就在專用計(jì)算上。
作為被Intel常年壓制的公司,AMD對異構(gòu)計(jì)算的推動(dòng)尤其熱心,不僅早早地將自己旗下的CPU產(chǎn)品重命名成APU(有直譯作加速處理器,也有意譯作融合處理器),而且還成立了一個(gè)HSA(異構(gòu)系統(tǒng)架構(gòu))基金會(huì),拉了ARM、Imagination、聯(lián)發(fā)科、德州儀器、三星、聯(lián)發(fā)科等眾多一線大廠一同上陣,主推一個(gè)叫做OpenCL的異構(gòu)編程框架。
光從這一局部態(tài)勢來看,應(yīng)該稱贊AMD下了一步好棋,但是AMD還有另外一個(gè)競爭對手NVIDIA。NVIDIA的主營業(yè)務(wù)GPU,是異構(gòu)計(jì)算這桿大旗下呼聲最高的異構(gòu)處理部件。也是對CPU地位威脅最大的,以至于在異構(gòu)計(jì)算這個(gè)大概念下還催生了些個(gè)附屬的小概念如“GPU計(jì)算”、“GPU編程”,早幾年GPU計(jì)算還比較新奇的時(shí)候,還發(fā)生過Intel惱怒于NVIDIA肆意鼓吹GPU的并行優(yōu)勢,公開發(fā)文撕逼的事情。盡管Intel一直在提高CPU的SIMD能力、從而壓縮GPU的性能優(yōu)勢,但是迄今為止頂尖GPU在實(shí)踐中對付頂尖CPU仍然能取得2-3倍或者更高的性能。NVIDIA為自家的GPU打造了另一個(gè)異構(gòu)編程框架CUDA,專門與OpenCL唱對臺戲,而且呼聲更高,至少在高性能計(jì)算領(lǐng)域已經(jīng)形成了對OpenCL的壓制態(tài)勢。
這么一看,是AMD螳螂捕蟬,NVIDIA黃雀在后,然而,還有彈丸在其下。前面提到,F(xiàn)PGA也被證明在一些專門領(lǐng)域具備對CPU的性能優(yōu)勢,而FPGA取得性能優(yōu)勢的領(lǐng)域也多是并行性比較好的,這也剛好是GPU的長處,這就與GPU打架了。例如微軟等公司就已經(jīng)為自己的數(shù)據(jù)中心加上了FPGA,使用OpenCL進(jìn)行編程,這樣一來GPU又面臨著被挖墻腳的窘境。
瞄準(zhǔn)可重構(gòu)/異構(gòu)領(lǐng)域的國產(chǎn)芯能殺得進(jìn)去嗎?
可以肯定的是,異構(gòu)計(jì)算/可重構(gòu)計(jì)算是當(dāng)前的一個(gè)技術(shù)熱點(diǎn),無論在學(xué)術(shù)研究上還是在工業(yè)實(shí)踐上都是如此,其市場空間是有的。但是國產(chǎn)芯能從中收獲多少,筆者抱持比較悲觀的態(tài)度。
從格局上來講,專用計(jì)算主要弱點(diǎn)是應(yīng)用場合有限,且GPU和FPGA存在互相競爭。Intel現(xiàn)有的處理器可以在除了低功耗以外幾乎任意場合下提供不錯(cuò)的性能,而可重構(gòu)/異構(gòu)計(jì)算的介入只是在一部分特定業(yè)務(wù)上再提供大幅加速 —— 這個(gè)應(yīng)用范圍就決定了可重構(gòu)/異構(gòu)計(jì)算不可能替代中央處理器現(xiàn)有的角色,而只是一些特定場合下的附庸,Intel的地位仍然無人能動(dòng)搖。因此,對于芯片自給率從30%提升至70%的國家戰(zhàn)略目標(biāo)來講,可重構(gòu)/異構(gòu)計(jì)算可以是其中漂亮的一塊拼圖,但是絕對無法擔(dān)主梁。
從商業(yè)上來講,可重構(gòu)/異構(gòu)計(jì)算的市場空間正在進(jìn)一步被Intel壓縮。Intel已經(jīng)于去年年底完成了對FPGA雙巨頭之一Altera的167億美元收購,據(jù)報(bào)道內(nèi)建FPGA模塊的新型xeon志強(qiáng)服務(wù)器處理器會(huì)在今年一季度面世,以Intel + Altera雙強(qiáng)聯(lián)合的體量來說,可重構(gòu)市場的市場份額絕大部分肯定不容旁落,除非Intel在定價(jià)或者出貨時(shí)間等問題上出現(xiàn)重大紕漏,國內(nèi)新興的這些尚處在襁褓期的可重構(gòu)計(jì)算公司將被迫在夾縫中求生存,這些公司的前景如何,很大程度上是受到Intel間接控制的,筆者對此較難看好。