高端處理器芯片的技術(shù)趨勢與可持續(xù)發(fā)展
作者/ 唐志敏 中科院計(jì)算技術(shù)研究所
本文引用地址:http://www.ex-cimer.com/article/201703/345935.htm摘要:本文介紹了高端處理器芯片的市場需求,分析了當(dāng)下所面臨的挑戰(zhàn)和機(jī)遇,以及處理器架構(gòu)的發(fā)展和未來方向。
隨著集成電路工藝的不斷提升,如今,逼近極限的集成電路工藝大大增加了高端芯片本身的研發(fā)成本。同時(shí),從整個(gè)傳感器網(wǎng)絡(luò)到云數(shù)據(jù)中心的新應(yīng)用模式對(duì)計(jì)算機(jī)系統(tǒng)提出了很多新的要求。要應(yīng)對(duì)這種新局面,就需要通過深入理解應(yīng)用的本質(zhì)需求,設(shè)計(jì)可持續(xù)發(fā)展的計(jì)算系統(tǒng)結(jié)構(gòu)。
高端處理器芯片需要高性價(jià)比和低能耗
目前的市場對(duì)高端處理器主要有兩方面需求。
第一方面就是要有較好的性價(jià)比。就當(dāng)下市場來看,不斷降低成本的需求仍然存在,但是也出現(xiàn)了成本增長的新因素。對(duì)很多應(yīng)用來說,性能不再是最核心的瓶頸,用戶體驗(yàn)成為新的關(guān)注點(diǎn)。例如現(xiàn)在的交通系統(tǒng),已經(jīng)有汽車、火車和飛機(jī),雖然更快一些會(huì)更好,但已經(jīng)不是整個(gè)系統(tǒng)競爭力提升的決定因素,更多在于用戶體驗(yàn)和競爭力方面的考量。隨之而來的是性能本身也出現(xiàn)了一些新的形式,傳統(tǒng)意義上的計(jì)算速度和事務(wù)處理速度已經(jīng)不能體現(xiàn)系統(tǒng)的整體性能,現(xiàn)在還要加入服務(wù)速度,即單位時(shí)間內(nèi)服務(wù)的請求數(shù)。
另一方面則是低能耗。從需求方面來說,低能耗已經(jīng)成為一種新的趨勢。如今,計(jì)算系統(tǒng)已經(jīng)出現(xiàn)兩極分化,即云端和終端。云端規(guī)模太大,散熱和耗電都會(huì)成為很大的負(fù)擔(dān),因而數(shù)據(jù)中心的利用率成為關(guān)注點(diǎn)。對(duì)終端方面來說,電池壽命是主要限制,待機(jī)時(shí)間成為關(guān)鍵影響因素。
實(shí)際上,計(jì)算系統(tǒng)更多的能耗不是在計(jì)算方面,而是在通訊方面。一項(xiàng)研究表明,在一項(xiàng)Linpack計(jì)算中發(fā)現(xiàn),平均每個(gè)浮點(diǎn)運(yùn)算在FPU里消耗10pJ能量,而在訪存通路上耗能475pJ。因而,計(jì)算本身消耗的能量并不多,在訪存路徑中消耗的能量反而更多。在物聯(lián)網(wǎng)、傳感器領(lǐng)域中,很多數(shù)據(jù)傳送依賴于無線通信,這將使計(jì)算和無線射頻通信消耗的能量差距更大。
通過新結(jié)構(gòu)和新算法解決低功耗
為了解決能耗方面的問題,我們除了有效利用訪問的局部性,采用多級(jí)緩存外,還有很多其他方法。
需求的變化使得計(jì)算系統(tǒng)的結(jié)構(gòu)也會(huì)有相應(yīng)變化,眾核并行結(jié)構(gòu)是當(dāng)下降低能耗的一種新結(jié)構(gòu)。同時(shí),要求軟件棧采用扁平化結(jié)構(gòu),即軟件棧不要太深,因?yàn)檐浖5牟煌瑢哟沃g,都是數(shù)據(jù)拷貝和傳送,軟件棧越深,耗電就會(huì)越多。另外,面向應(yīng)用特性也可以做一些定制結(jié)構(gòu)。
探索提高新興應(yīng)用性能的結(jié)構(gòu)也是降低功耗的一種解決方法。例如,現(xiàn)在比較熱門的人工智能,面向人工智能方面的應(yīng)用有一些新的結(jié)構(gòu),例如加速方案,比用傳統(tǒng)的通用處理方案效果更好。
適應(yīng)新需求的新算法是解決低功耗的另一種嘗試方法。算法復(fù)雜度的研究已經(jīng)很多了,傳統(tǒng)上人們只考慮算法的計(jì)算復(fù)雜度,而現(xiàn)在還需要考慮訪存復(fù)雜度和通信復(fù)雜度。傳統(tǒng)上會(huì)認(rèn)為計(jì)算量越少越好,現(xiàn)在可能會(huì)考慮“計(jì)算多一點(diǎn),通信少一點(diǎn)”,以計(jì)算的增長為代價(jià)換取通信的減少,更能節(jié)省能耗。
制約新結(jié)構(gòu)產(chǎn)生的因素
有兩個(gè)重要因素制約了對(duì)新結(jié)構(gòu)的探索,即已有的軟硬件生態(tài)系統(tǒng)和開發(fā)成本。現(xiàn)存的大量工業(yè)標(biāo)準(zhǔn)和事實(shí)標(biāo)準(zhǔn)構(gòu)成了成熟的軟硬件的生態(tài)系統(tǒng),一旦新的結(jié)構(gòu)不適應(yīng)這種軟件生態(tài),就很難生存下去,而重新開發(fā)一個(gè)新的生態(tài),比開發(fā)一種新結(jié)構(gòu)更為困難。這在很大程度上制約了開發(fā)者對(duì)新結(jié)構(gòu)的探索。而開發(fā)新結(jié)構(gòu)的成本也會(huì)很高,一個(gè)新結(jié)構(gòu)需要一個(gè)新的芯片支撐,現(xiàn)在的極限工藝條件下,一次性工程開發(fā)的投入越來越高,開發(fā)一款新的芯片投入已經(jīng)在億美元的量級(jí)上。據(jù)IDC服務(wù)器市場架構(gòu)分析,在2015年第一季度,X86服務(wù)器系統(tǒng)占整個(gè)市場99.26%份額,非X86系統(tǒng)只占0.74%。而在非X86市場中power占比較大,還有其他的EPIC、Sparc、CISC以及RISC等,如圖1。
突破指令集的禁錮
指令系統(tǒng)是一把雙刃劍。由于兼容性好,指令集不變,軟件就不用改。壞處就是制約了技術(shù)本身的創(chuàng)新,積累的大量軟件成為體系結(jié)構(gòu)革新的包袱。以X86為例,其條件碼會(huì)影響流水線效率,變長指令則會(huì)影響指令譯碼和發(fā)射效率,復(fù)雜指令也會(huì)影響指令執(zhí)行效率。
由于當(dāng)下市場的商業(yè)價(jià)值高于技術(shù)革新,舊的指令集的商業(yè)價(jià)值戰(zhàn)勝了技術(shù)革新的很多方面。在技術(shù)上,RISC比CISC好,而現(xiàn)在在市場上卻越來越少了,基本上只剩下一個(gè)ARM;之前有一個(gè)EPIC看起來也比CISC好,現(xiàn)在也已經(jīng)推出歷史舞臺(tái)。這是一個(gè)商業(yè)和技術(shù)博弈的結(jié)果,相對(duì)于技術(shù),商業(yè)起著更重要的作用。
與主流的指令集的兼容是比較重要的,因?yàn)橐靡延械能浶陨鷳B(tài)。即使是傳統(tǒng)的指令集其實(shí)也是一直在不斷地與時(shí)俱進(jìn),根據(jù)新的應(yīng)用需求不斷發(fā)展的。以X86(傳統(tǒng)的指令集)來說,從最早70年代末,80年代初就有了,但是一直在不斷地?cái)U(kuò)展,增加了SIMD多媒體、SIMD向量計(jì)算,指令系統(tǒng)支持虛擬化、加解密運(yùn)算,各種安全保護(hù)機(jī)制不斷地發(fā)展。
另一方面,指令系統(tǒng)結(jié)構(gòu)仍有不斷創(chuàng)新的空間。隨著Internet的發(fā)展,出現(xiàn)了很多跨平臺(tái)的語言,例如JAVA等語言,對(duì)ISA(指令集平臺(tái))的依賴性相對(duì)較小。
通用結(jié)構(gòu)和專用結(jié)構(gòu)
物聯(lián)網(wǎng)是一個(gè)巨大的市場,但是物聯(lián)網(wǎng)的需求是非常碎片化的。因而,物聯(lián)網(wǎng)的市場雖然非常大,但是不可能有一種架構(gòu)包涵天下,可能有多種不同的架構(gòu),而每個(gè)架構(gòu)/產(chǎn)品形式的量不一定那么大。
從學(xué)術(shù)角度/技術(shù)角度來看,通用結(jié)構(gòu)是樣樣都能做,通用計(jì)算機(jī)是適用于科學(xué)與工程計(jì)算、數(shù)據(jù)處理、事務(wù)處理、過程控制等各種應(yīng)用,可高效率地運(yùn)行SPEC CPU基準(zhǔn)程序或包括其它各類應(yīng)用負(fù)荷特征的基準(zhǔn)程序。專用結(jié)構(gòu)是針對(duì)某類算法而設(shè)計(jì)的,是從算法到架構(gòu)映射出的特定結(jié)構(gòu),例如神經(jīng)網(wǎng)絡(luò)、流處理器等。包括現(xiàn)在的GPU,雖然在圖形方面比較通用一些,但是在計(jì)算方面還是有一定的專用性。
通用結(jié)構(gòu)的優(yōu)勢在于可以基于最先進(jìn)的工藝來做,穩(wěn)定可靠,成本相對(duì)較低,有成熟的生態(tài)系統(tǒng)和解決方案,可以大批量生產(chǎn)。但是通用結(jié)構(gòu)對(duì)許多應(yīng)用并不是最優(yōu)的,它適合所用的應(yīng)用,但只是對(duì)各種應(yīng)用都不會(huì)太差。因而會(huì)導(dǎo)致資源過度浪費(fèi)、延遲增大、能耗增加等因素。例如從云計(jì)算來看,一個(gè)通用的CPU中只有30%的面積是經(jīng)常用到的。
專用結(jié)構(gòu)針對(duì)應(yīng)用算法進(jìn)行了優(yōu)化設(shè)計(jì),效率高、省資源、能耗低。專用架構(gòu)要開發(fā)者自己做,增加了大量的設(shè)計(jì)和驗(yàn)證工作,上市時(shí)間不確定,穩(wěn)定性和可靠性也可能有問題。由于巨大的NRE(Non-Recurring Engineering,一次性工程費(fèi)用)難以被小批量產(chǎn)品所分?jǐn)?,成本也?huì)較高。
未來處理器架構(gòu)
未來的通用處理器的設(shè)計(jì)空間是跨越通用和專用的鴻溝,實(shí)現(xiàn)通用、高效、低功耗、低成本的處理芯片??梢杂么罅亢唵蔚暮舜嫔倭繌?fù)雜的核,這樣雖然會(huì)降低能耗,但是比較專用;增加動(dòng)態(tài)特性,每個(gè)核支持多個(gè)硬件線程,片上能夠容納大量的線程進(jìn)行運(yùn)算,這對(duì)開發(fā)并行性,容忍訪存延遲有好處;另外,通過一個(gè)核上有多個(gè)線程,多個(gè)核上有更多線程,用動(dòng)態(tài)方式調(diào)度核內(nèi)、核間線程,這樣的結(jié)構(gòu)會(huì)更通用。就需求來看,終極目標(biāo)是開發(fā)一種普適的架構(gòu),同時(shí)支持?jǐn)?shù)據(jù)并行和線性并行,可以滿足從云到端的各類數(shù)據(jù)需求,包括云計(jì)算、服務(wù)器及移動(dòng)終端。
(注:本文根據(jù)“2016中國集成電路產(chǎn)業(yè)促進(jìn)大會(huì)”的高端芯片發(fā)展論壇中演講改編。)
參考文獻(xiàn):
[1]王瑩,葉雷.2015:物聯(lián)網(wǎng)引領(lǐng)芯片廠商創(chuàng)新[J].電子產(chǎn)品世界,2015(1):11-19.
[2]迎九.用芯片開啟產(chǎn)業(yè)物聯(lián)網(wǎng)的產(chǎn)業(yè)升級(jí)[J].電子產(chǎn)品世界,2015(9):1-3.
[3]迎九.FD-SOI與FinFET互補(bǔ),是中國芯片業(yè)彎道超車機(jī)會(huì)[J].電子產(chǎn)品世界,2016(4):5-6.
[4]Peter Greenhalgh.ARM的A/R/M設(shè)計(jì)目標(biāo):適合的處理器來執(zhí)行對(duì)應(yīng)的任務(wù)[J].電子產(chǎn)品世界,2016(8):30-33.
本文來源于《電子產(chǎn)品世界》2017年第4期第27頁,歡迎您寫論文時(shí)引用,并注明出處。
評(píng)論