6月底公布的最新一期TOP500超算排行榜中,中國的神威·太湖之光低調(diào)地擠下了六連霸的同胞兄弟天河2號,成為首款理論性能達到10億億次的超算,將 天河2號之前保持的性能往前推進了一個量級,晉級新的世界第一超算。伴隨著太湖之光的其實不僅僅是第一名的榮譽,這次TOP500上中國上榜的超算數(shù)量首 次超過了以往的霸主美國,超算應用也實現(xiàn)了三十年來的突破,更重要的是太湖之光計算機使用的是國產(chǎn)處理器,不再是Intel的Xeon處理器。國產(chǎn)處理器“取代”Intel、AMD等國際公司的處理器一直是國家的戰(zhàn)略和夢想,如今在太湖之光計算機上算是真正圓夢了,不過當初的新聞報道中筆者也看到了評論中很多人對國產(chǎn)處理器的批評(雖然大部分否定太湖之光的人只是宣泄情緒、負能量而已),這個問題也是影響國產(chǎn)處理器發(fā)展的一個重要因素,因為生態(tài)體系的缺乏,中國發(fā)展自己的處理器也只能是“摸著石頭過河”,這個石頭就是國外已經(jīng)發(fā)展的處理器指令集,但這種路線又很容易被不明真相的圍觀者嘲諷——都用了別人的指令集了,怎么還敢叫自主產(chǎn)權(quán)?
對于這個問題,多年前龍芯處理器的架構(gòu)師胡偉武博士也解釋過:“我們CPU也是可以做世界第一的,而且有,關(guān)鍵就是沒法用,用戶不用你。”軟件生態(tài)的現(xiàn)實決定了國產(chǎn)處理器不可能從0開始研發(fā),在這方面日本80-90年代通過TRON計劃研制通用OS、CPU但最終失敗的例子可以說是前車之鑒,反而C919大飛機這種國際化分工合作的模式容易獲得成功。
在研發(fā)處理器方面,既然我們的目標是“過河”,為了穩(wěn)妥、安全,摸著石頭小心探索也是可行的,而中國在處理器研發(fā)上可以說把河里的石頭都摸了個遍,從X86到ARM再到MIPS還有小眾的SPARC、Alpha甚至安騰架構(gòu),國內(nèi)幾乎都嘗試了。
今天的超能課堂里,我們就來簡單了解下國內(nèi)處理器的指令集體系及技術(shù)來源。根據(jù)公開來源,筆者能找到的有代表性的國產(chǎn)處理器方案主要有龍芯、申威、兆芯、飛騰、宏芯以及智能手機/平板領(lǐng)域發(fā)展最好的海思、展訊、全志等,他們所用的架構(gòu)涉及X86、ARM、MIPS、Power及SPARC、Alpha等,如下圖所示:
·龍芯:血統(tǒng)純正的中國芯,商業(yè)化不盡如人意
龍芯并非最早的國產(chǎn)處理器,也不是最成功的國產(chǎn)處理器,但提到國產(chǎn)處理器,大家第一個想到的恐怕就是龍芯了,它是曝光率最高的國產(chǎn)處理器,而且考慮到它是中科院計算機所研發(fā)的,其血統(tǒng)的純正性更容易成為國產(chǎn)處理器的代表。
龍芯課題組于2001年成立,不過龍芯處理器的正式誕生之日是2002年8月10日,在計算所長李國杰院士的領(lǐng)導下,龍芯之父胡偉武博士及其團隊拿出了龍芯1號處理器,當年他還寫過《我們的龍芯1號》一文介紹龍芯的研發(fā)歷程,小編當年也看過這篇文章,記憶猶新的是龍芯的中文代號是“狗剩”,源于中國人“賴名好養(yǎng)活”的習俗,不過也可以看出團隊對龍芯處理器的未來雖然有期待,但當時應該是挺擔心這個項目的未來發(fā)展的,只是龍芯的英文名就非常高大上了——Godson,上帝之子!
龍芯一出世就頂著自主研發(fā)的美名,但是沒多久就被爆出龍芯的指令集實際上是源于MIPS,也就是說是買來的,這讓龍芯瞬間被千夫所指,研發(fā)團隊也背負了罵名和壓力,胡偉武博士也解釋過為何選擇MIPS指令集,前面說的“用戶不用你”就是根本原因,自建一套軟件生態(tài)系統(tǒng)對中科院這樣的學術(shù)單位來說是不可能的任務(wù)。
對龍芯的第二個質(zhì)疑在于他們選擇了MIPS指令集而非現(xiàn)在大紅大紫的ARM指令集,不過時間回溯到2000年代(龍芯立項研發(fā)的時代可能更早一些),當時的ARM可沒有如今這般強勢,而MIPS在大學、科研單位有良好的基礎(chǔ),龍芯團隊選擇MIPS也是情有可原。
不管怎樣,龍芯這個項目算是活下來了,從最初的龍芯1到目前的龍芯3已經(jīng)發(fā)展了三代了,每一代其實又衍生出了多個版本,從單核、雙核到四核、八核,從180nm工藝到28nm工藝,從雙發(fā)射到四發(fā)射,龍芯處理器的架構(gòu)、規(guī)格、頻率、性能都在不斷進步,龍芯3B2000甚至號稱性能達到了Intel Ivy Bridge處理器的水平,其指令集其實已經(jīng)遠遠超出了MIPS范疇,加入了很多龍芯團隊自己開發(fā)的指令,比之前的產(chǎn)品增加了500多條自定義龍芯擴展指令,可用于實現(xiàn)對其他主流指令系統(tǒng)的二進制翻譯兼容,另外存儲訪問和I/O效率也有大幅的提高,還有一點就是軟硬件將保持向前兼容。
但是龍芯也不是沒有槽點,大多數(shù)龍芯處理器其實活在了中科院給外界展示成果的展臺上,盡管多年來大家對龍芯抱以期待,中科院甚至讓旗下的江蘇夢蘭集團參與成立中科龍夢公司加速商業(yè)化,也推出了靈瓏/福瓏/逸瓏臺式機、筆記本等產(chǎn)品,但這些產(chǎn)品大都曇花一現(xiàn),性能無法達到主流水平,很快就被人給忘記了。
·申威/飛騰:最成功的國產(chǎn)處理器,軍方的秘密武器
申威和飛騰盡管選擇的處理器路線不同,不過這兩家要放在一起說了,因為這兩家背后有軍方背景,申威處理器是無錫江南計算技術(shù)研究所研發(fā)的,后者也是總參謀部第五十六研究所,它有個名字是上海高性能集成電路設(shè)計中心,而天津飛騰是國防科大旗下的。此外,早前我們還報道過一家名為Phytium公司在去年的Hotchips 2015會議上推出了代號為Mars(火星)的多核處理器,這家公司是廣州飛騰,據(jù)說也是國防科大下屬的,但跟研發(fā)飛騰FT處理器的天津飛騰又不是一家單位。
回到正題,江南所在計算機技術(shù)研究上也是老資歷了,不過在處理器指令集上他們的選擇看起來有點非主流——DEC公司的Alpha 21264指令集,在技術(shù)上Alpha有獨特之處,DEC當年在處理器市場也曾叱咤風云,AMD的K7架構(gòu)就有部分技術(shù)源于Alpha架構(gòu),AMD上上上任CEO德克·梅爾(Dirk Meyer)就來自DEC公司,去年辭職走人的Zen架構(gòu)之父Jim Keller也曾在DEC公司研發(fā)Alpha架構(gòu)。
如今DEC公司早就煙消云散,公司幾經(jīng)轉(zhuǎn)賣,微軟在Win2000之后也放棄了對Alpha架構(gòu)的支持,Alpha架構(gòu)也早就不再更新了,專利也過期了,這可能是江南所選擇Alpha架構(gòu)的原因之一。2011年濟南的超算中心部署了神威藍光,它所用的處理器就是神威SW1600,16核心,現(xiàn)在的資料都認為它是基于專利已經(jīng)過期的DEC ALPHA 21164A EV-56架構(gòu)。
這次的太湖之光的神威SW26010處理器也是江南所研發(fā)的,雖然大家猜測它還是Alpha指令集,但跟龍芯后續(xù)架構(gòu)類似,申威SW26010的架構(gòu)、指令集已經(jīng)遠遠超出了之前的范疇,加入了很多新指令。這次的SW26010就是260核心眾核架構(gòu),亂序執(zhí)行架構(gòu),頻率1.45GHz,整個處理器包括4個MPE(Management Processing Element)管理單元、4個CPE(Computing Processing Element)計算單元及4個MC內(nèi)存控制器單元組成,其中CPE單元又由8x8陣列的64核心組成,所以總計是260個核心(4x64+4=260)。
與其他國產(chǎn)處理器相比,申威系在性能上完全走在了前列,在世界范圍內(nèi)都是靠前的,SW26010的理論浮點性能高達3TFLOPS,其性能完全可與Inel最新的Xeon Phi加速卡一拼。不過申威處理器的不足之處在于內(nèi)存系統(tǒng),太湖之光性能達到天河2號三倍的同時總內(nèi)存反而從1.4PB降低到了1.31PB,每個節(jié)點使用了四路128bit DDR3-2133內(nèi)存,帶寬為136GB/s,這一點上不如Intel的Xeon Phi加速卡,后者自身集成了16GB eDRAM緩存,帶寬超過500GB/s,而且早就支持DDR4內(nèi)存了。
再來說下飛騰,天津飛騰研發(fā)的FT系列處理器也在HPC領(lǐng)域有過應用,不過飛騰FT處理器用的架構(gòu)更雜亂,從公開資料來看第一代FT處理器兼容于Intel安騰2指令集,第二代FT-64處理器在銀河計算機中有過使用,第三代產(chǎn)品FT-1000則是基于開源的UltraSPARC架構(gòu),8核64線程,在天河1號計算機的節(jié)點網(wǎng)絡(luò)上有使用。
之后的FT-1500還是基于SPARC架構(gòu),制程工藝從65nm升級到了40nm,16核心128線程,在天河2號超算中使用了4096顆FT-1500處理器作為節(jié)點前端處理器。
最新的FT-1500A雖然名字跟上面的類似,但實際上沒什么關(guān)系了,因為它的架構(gòu)變成了ARM 64位,使用的是28nm工藝。據(jù)天津飛騰總經(jīng)理谷虹介紹,F(xiàn)T-1500A系列處理器是64位通用CPU,兼容ARM V8指令集,采用國際先進的28nm工藝流片,具有高性能、低功耗等特點,關(guān)鍵技術(shù)國內(nèi)領(lǐng)先,可實現(xiàn)對Intel中高端“至強”服務(wù)器芯片的替代,并廣泛應用于政府辦公和金融、稅務(wù)等各行業(yè)信息化系統(tǒng)之中。
不論是申威還是飛騰,這兩家軍方背景的國產(chǎn)處理器單位因為目標明確,可以說是國產(chǎn)處理器中做的最成功的——不論性能還是架構(gòu)設(shè)計都有獨特之處,申威處理器不僅有硬件研發(fā),還在編譯器及Linux操作系統(tǒng)(神威睿思)上做了創(chuàng)新,太湖之光這次有三項應用入圍戈登貝爾獎,這也得歸功于江南所在超算應用上的努力。
·中晟宏芯:借力藍色巨人IBM,Power架構(gòu)能撐起一片天?
通用處理器架構(gòu)也曾百花齊放,Intel當年面對的對手比現(xiàn)在多得多,但X86現(xiàn)在差不多一統(tǒng)天下了,能跟Intel競爭的公司就更少了,強大如IBM這樣擁有Power架構(gòu)的公司也不行了,他們索性于2013年聯(lián)合NVIDIA、泰安電腦等公司成立OpenPower開放聯(lián)盟,其他公司也可以獲得Power架構(gòu)授權(quán)。此后在2014年還推動成立中國POWER技術(shù)產(chǎn)業(yè)生態(tài)聯(lián)盟,IBM與多家中國公司簽署了授權(quán)協(xié)議,中晟宏芯就是其中的一家。
中晟宏芯成立于2013年,發(fā)起人是江蘇夢蘭集團、江蘇中晟智源、蘇州高新創(chuàng)業(yè)投資集團,夢蘭集團之前我們說過是中科院旗下的公司,而后兩者可以說是江蘇政府代表,因此中晟宏芯獲得Power架構(gòu)技術(shù)得到了工信部及江蘇政府、中科院計算所的支持,計算所甚至派了一個技術(shù)團隊,如果一切都能按照預定的引進、消化、吸收,中晟宏芯應該在2019年推出國產(chǎn)化的Power處理器。
但是事與愿違,中晟宏芯雖然很快就推出了CP1處理器,但這只是IBM Power 8處理器的馬甲而已,還沒等這家公司消化Power技術(shù),他們就鬧出了欠薪風波,中科院派出的技術(shù)人員發(fā)不出工資,此后公司也不斷動蕩,股東發(fā)生變化,人員也波動頻繁,指望中晟宏芯推動Power架構(gòu)國產(chǎn)化是沒希望了。
此外,IBM的Power架構(gòu)在國內(nèi)銀行等關(guān)鍵行業(yè)有重要應用,而且Power處理器性能強勁,是個好東西,但真要引進消化也沒這么容易,以Power 8架構(gòu)為例,它是12核心96線程,核心面積達到了650mm2,復雜度遠高于普通處理器,再加上原本使用的是IBM自己的22nm SOI工藝,而SOI工藝已經(jīng)沒多少代工廠搞了(GlobalFoundries用過,28nm節(jié)點放棄,后來又繼承了IBM的衣缽),這無疑增加了Power處理器的國產(chǎn)化難度。
·兆芯/海光:中國能用X86技術(shù)打敗Intel、AMD?
前面提到的國產(chǎn)處理器中,除了軍方背景的申威、飛騰之外,基于MIPS、SPARC以及Power架構(gòu)的處理器發(fā)展過程都是一波三折,他們面臨的核心問題也是一樣的——軟件生態(tài)遠不如X86。既然大家都能注意到這個問題,那中國為什么不直接選擇X86體系呢?這是個好問題,你還別說,國內(nèi)還真有搞X86架構(gòu)的。
國內(nèi)較早跟X86架構(gòu)授權(quán)有關(guān)的是北大微電子中心,2005年AMD跟中國政府達成了協(xié)議,科技部指定北大微電子中心接收AMD Geode-2處理器技術(shù)授權(quán),北大微電子中心還把這事作為重點宣傳,表示“這是美國歷史上,第一次向在美國境外授權(quán)開發(fā)X86兼容的微處理器及系統(tǒng)芯片。此次合作也是迄今為止中美半導體領(lǐng)域最具影響力的技術(shù)合作。”
AMD給的這個處理器是X86架構(gòu)的,中國因此獲得了X86技術(shù),不過Geode處理器大部分人是沒聽說過的吧,因為這是AMD嵌入式處理器,其最初起源于Cyrix公司的MeidaGX平臺,后來Cyrix這部分業(yè)務(wù)被國家半導體(NS)收購,2003年AMD又把國家半導體的Geode業(yè)務(wù)收了。
AMD授權(quán)給北大的X86技術(shù)顯然不可能是最頂級的,所以選了嵌入式架構(gòu)給中國,不過這點“施舍”已經(jīng)可以讓北大好好裝一下了,很多人恐怕不記得還有北大眾志處理器吧,原先也是做MIPS架構(gòu),得到AMD授權(quán)之后,他們的PKUnity86-3就是X86兼容處理器,但最后也是不了了之,也只活在了展臺上,現(xiàn)在都沒什么消息了。
說得有點遠了,回到正題上來。由于X86架構(gòu)是AMD、Intel吃飯的家伙,他們通常是沒可能把技術(shù)授權(quán)給別人的,AMD之前那個例子更多地是拿買來的技術(shù)迎合中國市場而已,中國公司從這兩家獲得X86技術(shù)的可能性幾乎沒了。不過我們別忘了X86技術(shù)實際上并非只有AMD和Intel,VIA威盛公司也有X86授權(quán)的,他們的技術(shù)來源于Cyrix,后者又是Intel當年對外授權(quán)X86技術(shù)的幾家公司之一。
在當年的Intel反壟斷案和解之后,VIA的X86技術(shù)也算是正當化了,但是VIA自己是個小公司,沒法玩轉(zhuǎn)高性能X86架構(gòu)的,他們出的Nano、Nehemiah(尼希米)、Esther(以斯帖)、Isaiah(以賽亞,VIA總經(jīng)理陳文琦、王雪紅夫婦是基督徒,產(chǎn)品代號也很有宗教特色)等處理器雖然不乏特色,但因為制造工藝不能跟Intel相比,架構(gòu)和性能也是不能相提并論的。既然沒有市場了,那VIA索性把X86技術(shù)賣給了大陸的上海兆芯公司。
兆芯這家公司也是很有背景的,2013年由上海國資委旗下的聯(lián)和投資與VIA成立的,注冊資本2億美元,上海出資80%,VIA占股20%。這次的合作顯然是大陸出錢,VIA出技術(shù),因為兆芯的業(yè)務(wù)范圍包括X86 CPU、ARM CPU、GPU及芯片組研發(fā)都是VIA現(xiàn)有的,上海國資委下面的投資公司可沒這技術(shù)。
憑借雄厚的背景,兆芯如愿拿下了國家的核高基項目,根據(jù)公開報道兆芯拿到的核高基補貼高達56億,后續(xù)還在申請,總額高達70億。至于回報,兆芯號稱自主研發(fā)的ZX-C處理器于2015年4月量產(chǎn),28nm工藝,四核處理器,主頻可達2.0GHz,TDP功耗僅為18W,并且支持國密算法加密,但兆芯的CPU基本上都是VIA處理器的馬甲,畢竟從成立到拿出產(chǎn)品只有2年左右的時間,這么快就生產(chǎn)出四核X86處理器并不容易。
除了上海兆芯,國內(nèi)另一家獲得X86技術(shù)授權(quán)的是天津海光,這事還得從AMD說起,今年Q2季度財報公布之后,AMD宣布他們跟中國天津海光投資公司達成了協(xié)議,將X86技術(shù)授權(quán)給海光公司,獲得2.93億美元的授權(quán)費,雙方還會成立合資公司。
目前有關(guān)AMD、海光的X86授權(quán)協(xié)議還不明確,但AMD這次授權(quán)給中國公司的X86很可能不再是低端的,因為AMD要打開中國高性能服務(wù)器市場,授權(quán)的架構(gòu)很可能是高性能的Zen技術(shù),換句話說AMD有可能給了中國公司最尖端的X86技術(shù),如果真是如此,AMD這一次可真的是拼了。
海思:商用市場的成功才是真成功
這里雖然選擇了華為的海思,不過筆者要說的其實是海思、展訊、全志、瑞芯微等一幫民營公司開發(fā)的處理器,選擇海思作為代表,是因為海思是其中的佼佼者。這些公司雖然沒多少背景(海思背后的華為算是大公司,是個例外),但他們恰恰是商業(yè)化最成功的國產(chǎn)處理器,這點跟前面介紹的其他處理器不同。
商業(yè)公司以市場為導向,不必背負什么國產(chǎn)、自主產(chǎn)權(quán)的壓力,他們無一例外選擇了最熱門的ARM體系,架構(gòu)也多是購買的ARM公司的Cortex-A系列授權(quán),GPU也是花錢授權(quán)的,海思還可以研發(fā)自己的基帶及ISP、DSP等芯片,目前的麒麟950處理器是首款Cortex-A72核心、Mali-T880 GPU及TSMC 16nm Plus工藝處理器,已經(jīng)具備國際先進水平。
總結(jié):
以上介紹的國產(chǎn)處理器中,他們大體可以寫分為學院派、軍方派、國資派及民營派,其中商業(yè)化最好的顯然是民營派,國內(nèi)廠商在手機/平板SoC處理器上已經(jīng)闖出一片天,軍方派的飛騰、申威因為目標明確,實際上發(fā)展的也相當成功,申威SW26010在眾核架構(gòu)上也具備世界水準了。
不能讓人滿意的要屬學院派及國資派了,龍芯被寄予厚望,但市場化舉步維艱,考慮到MIPS指令集的應用場合,龍芯進入主流市場是沒可能了。一些國有資本參與的國產(chǎn)處理器更讓人失望,其所推出的處理器經(jīng)常號稱國產(chǎn)自主產(chǎn)權(quán)或者自主研發(fā),但背后多是馬甲,很多項目都是為了爭取國家的核高基巨額補貼。
當然,在套取國家補貼這點上,不僅是國資派,所有公司其實都對這個蛋糕垂涎三尺。華為海思雖然在商用市場發(fā)展的不錯了,這點值得表揚,但他們也沒忘記核高基補貼。我們曾報道過華為的泰山服務(wù)器,此前資料說它使用的是華為自主研發(fā)的CPU架構(gòu),但之后華為公關(guān)找我們澄清過——該處理器不是16核而是32核的,基于公版Cortex-A57架構(gòu),華為表示該項目是國家核高基計劃,不會量產(chǎn)。
筆者并不是反對國家補貼高科技發(fā)展,以當前國內(nèi)相對弱勢的情況來看,國家的支持和補助對處理器研發(fā)以及存儲芯片研發(fā)、半導體工藝等重大技術(shù)都是非常必要的,問題是如何避免有些公司渾水摸魚、騙取納稅人資金。
盡管有這樣那樣的問題,國產(chǎn)處理器無論如何都是一個要大力發(fā)展的行業(yè),我們希望不久的將來能看到中國公司也能制造出世界級水準的高性能處理器,與Intel、AMD、高通等公司同臺競爭,盡管不是每一個人都會選擇國產(chǎn)處理器。