龍芯、飛騰大比拼
文章推薦指數: 80 %
據公開消息,龍芯和飛騰最新的產品都與去年年底開始流片,也就是說,新產品即將與國人見面。
那麼,在飛騰的ARM晶片和龍芯3A3000即將完成流片之時,筆者將從自主智慧財產權、裸CPU性能和軟體方面對飛騰和龍芯上一代產品——飛騰1500A和龍芯3A2000做一個對比,特別是之前有媒體對比龍芯3A2000和飛騰1500A總體上比較客觀,但在局部也有一些紕漏,筆者趁機在此做一下修正。
|先從自主智慧財產權談起
檢驗自主可控的標準——信息安全不受制於人,產業發展不受制於人。
因此,這就必須做到具有指令集的發展權、微結構是自主設計、利潤不受制於人等要素。
指令集的發展權
龍芯的指令集是loongISA,共有共1907條指令。
源自MIPS:
216條MIPS基礎指令,獲得永久授權。
311條DSP指令,獲得永久授權。
自主指令:
MIPS基礎指令擴展——148條loongEXT,
虛擬機擴展——5條loongVM指令,
二進位翻譯擴展——213條loongBT,
向量指令擴展——1014條loongSIMD
顯而易見,龍芯獲得的是永久授權,並擁有自行擴展指令集的權力。
另外龍芯還就此申請了100+專利。
而在MIPS公司破產後,被Imagination收購,雖然在嵌入式晶片方面有P5600這樣的產品,但至今卻未曾開發高性能CPU,有步惠普收購康柏進而獲得Alhpa的後塵之趨勢。
這直接導致龍芯是MIPS陣營里唯一的高性能CPU,加上龍芯不失時機的向開源組織捐獻了一批機器,致使一些開源軟體以龍芯作為MIPS的代表做適配。
因此,在Imagination發展力度小+龍芯獲得MIPS永久授權+自行擴展指令且申請專利+開源軟體針對龍芯做適配,共同導致龍芯在指令集上受MIPS的鉗制已然微乎其微,基本可以為認為走上了單飛的道路。
而國內ARM陣營IC設計公司僅僅能購買ARM64指令集,而無法買到ARM32位指令集授權,而且ARM64指令集授權期限為5年,沒有自主擴展的權力,也僅僅能用於設計伺服器晶片。
-
微結構是否自主設計
龍芯3A2000的微結構是GS464E,晶片代碼均自主設計,除標準單元和Memory Compiler生產的RAM之外,不存在第三方IP。
而飛騰1500A的微結構是ARM Cortex A57。
由於晶片的安全性、性能、功耗很大程度上取決於微結構,因此很難說飛騰1500A符合安全可控和自主智慧財產權的要求。
當然,也有網絡消息稱飛騰1500A用的是飛騰自主設計的「小米」,與「火星」、「地球」是同一個微結構,但筆者認為此消息為謠傳,具體原因在下文分析。
-
利潤不受制於人
購買ARM指令集授權的價格非常昂貴,據筆者了解僅僅ARM64指令集每5年的授權費就高達上千萬美元乃至近億美元。
而恰恰是如此高昂的授權費致使由U.C. Berkeley等幾個大學推出RISC-V指令集,Google、惠普、Oracle、西部數據等公司成立RISC-V基金會的原因——
RISC-V指令集是一個沒有專利問題和沒有歷史包袱的全新指令集,並且以BSD許可證發布。
任何公司都可以在自己的產品中免費使用,而修改也無需再開源。
購買ARM
IP核授權,比如ARM的A53或A57,集成自己的SOC,這種做法雖然能依附於AA體系,有利於市場化運營,能賺快錢,但在利潤方面也被外商控制。
因為在購買IP要支付授權費,每生產一片晶片還要支付專利費。
而且每個環節做什麼,有多少利潤,在AA體系中已經形成潛規則,國內IC設計公司依附於AA體系基本上淪為外商的馬仔。
這也是國內ARM陣營IC設計公司雖然營業收入不低,但利潤普遍不高的原因之一。
相比之下,龍芯不僅不需要向MIPS公司購買IP,反而可以對外出售IP,海信、海爾就向龍芯購買了200萬套IP用於智能家電和機頂盒。
下圖為懶人包,簡要概括了龍芯3A2000和飛騰1500A在智慧財產權方面的差別。
-
飛騰1500A的微結構是A57
有網絡消息稱飛騰1500A用的是飛騰自主設計的「小米」,與「火星」、「地球」是同一個微結構,不過筆者認為此消息為謠傳,主要有以下幾點:
1、時間上來不及
眾所周知,如果一款CPU從頭開始設計,研發周期一般要3年,而如果像海思、展訊那樣購買ARM的IP授權做集成,研發周期也要1年至2年,而飛騰在購買ARM 64位指令集授權後,不到2年的時間裡就拿出了飛騰1500A,就開發周期來看,飛騰1500A這款晶片很有可能是直接採用ARM Cortex A57。
2、飛騰1500A與「火星」的SPEC2006測試成績差距過大
根據第三方測試,飛騰1500
spec06測試的整數為10(@1.8G),換算一下就是5.5/G,而根據飛騰在2015年的發布後上公布的消息,「小米」的測試結果是9.6/G,雖然不談測試環境的SPEC測試跑分都是耍流氓——因為不同的測試環境的原因,SPEC測試分數會有一定浮動,但74.5%的跑分差距實在過於駭人——即便是技術實力強如Intel,在擁有ICC的神優化,以及向量指令優化等因素的情況下,也只能是自己CPU的spec06測試整數跑分增加40%。
因此,筆者認為飛騰1500A的微結構並非「小米」。
3、時間對不上
據公開消息,飛騰1500A在2014年流片,2015年與體制內單位簽訂的合同標為1000萬元,而「小米」和「火星」目前還依舊在流片。
在發布會上,火星的SPEC06測試也只有模擬器成績,而非實物。
4、ARM在指令集授權中會配套一個內核
雖然飛騰和ARM的合同上沒有購買IP內核授權的內容,但由於ARM在做指令集授權的時候都會給出配套的一個內核參考。
因此,有人以合同沒寫明購買IP核,所以飛騰1500A的微結構為自主設計的辯解無法成立。
當然以上都是筆者的猜測。
鑒於飛騰1500A已經商用,希望飛騰能公開飛騰1500A的用戶手,提供內部寄存器等定義資料。
效法龍芯將CPU的用戶手冊和技術資料放在網上供國人自由下載,以打消國人的疑惑。
| 裸CPU性能指標對比
裸CPU性能將用單線程性能、多線程性能以及訪存性能等主要指標進行對比。
-
單線程性能
龍芯3a2000的微結構為GS464E,根據中電集團的報告顯示:
龍芯GS464E在使用GCC4.8編譯器跑分為:整數768/G、浮點1153/G;
龍芯GS464E使用LCC編譯器跑分為:整數828/G、浮點1578/G。
而龍芯的主頻恰恰為1G,因此,GCC4.8編譯器跑分為:整數768、浮點1153;LCC編譯器跑分為:整數828、浮點1578。
而因為測試環境不同,ARM Cortex A57的測試分數則比較多,華為在麒麟950發布會上就給出A57 Spec2000整數跑分780/G的測試成績。
而根據國外網站對三星7420的實測,筆者將12項測試成績累乘,再開12次方後得到分值為1376.8分,再除以7240中A57 2.1G的主頻,得到跑分為655/G。
而根據另一個測試,A57的測試跑分甚至不足600/G,浮點跑分為700+/G。
這些測試分數差距的原因就在於不同的測試環境——畢竟開啟auto parallel會將原本單線程執行的程序並行化給多個處理器執行,導致SEPC2006整數分數增益。
另外,編譯器的不同,是否定製編譯優化策略等都會對跑分結果造成很大影響。
考慮到華為公布的SPEC分數一向偏高——華為公布的A72 spec2000 整數跑分為820/G,而根據國外網站實測,麒麟950的實測成績,A72 spec2000 整數跑分為749/G。
筆者猜測,華為公布的A57 spec2000 780/G, A72 spec2000 820/G,A57 spec2006 6/G,A72 spec2006
6.7/G很有可能是使用ARMCC編譯器,並在最優測試環境下,得出的結果。
另外,就某網文中的SPEC06測試成績而言,A57 sepc06 整數5.5/G,GS464E sepc06 整數6.5/G都並非在最優環境下測試的分數。
根據華為公布的數據,A57 sepc06整數為6/G,A72為6.7/G。
據筆者了解,龍芯GS464E sepc06整數最優環境下測試成績為7.5/G。
因此,筆者選擇一個適中的測試跑分:整數655/G,浮點分數因為華為和國外網站都沒有公布跑分,筆者以上圖測試中的700+/G適當上浮。
飛騰1500A的主頻為1.8G,那麼最後的測試結果為整數1179,浮點1300+。
很顯然,雖然GS464E強於A57,但由於飛騰1500A在主頻上比龍芯3A2000高80%,使得最終在整數跑分上,龍芯3A2000即便使用LCC編譯器測試成績,面對飛騰1500A依舊略遜一籌。
-
多線程性能和訪存性能對比
在同使用GCC編譯器下,飛騰1500A(@1.8GHz)SPEC CPU 2000 rate成績為:整數41.5,浮點34.
而龍芯3A2000(@1GHz)的成績為:整數30.9,浮點43.9。
在使用LCC編譯器後龍芯3A2000(@1.0GHz)整數34,浮點60.7。
很顯然,龍芯3A2000雖然在主頻上處於劣勢而導致在整數上低于飛騰1500A,但在浮點性能上卻異常強悍。
至於訪存性能,則如下圖,優劣一目了然。
飛騰1500A (1.8GHz,四核) VS. LS-3A2000 (1.0GHz,四核):
| 軟體生態情況
龍芯和飛騰在軟體生態上選擇了完全不同的道路:龍芯選擇嘗試主導生態建設,並在軟體上投入了很多精力。
而飛騰選擇兼容ARM生態,採取跟隨ARM產業生態的策略。
-
作業系統
國內支持龍芯的作業系統有中標麒麟、普華軟體、深度軟體、開源社區(Fedora、CentOS、Debian、Loongnix社區版),國內支持飛騰的作業系統有中標麒麟和Ubuntu。
-
辦公軟體
實際測試顯示,在政府機關使用最為廣泛的辦公軟體上,使用龍芯3A2000打開一個1M的word文件,需要2秒,而使用飛騰1500A則需要3秒;打開一個10M的word文件,龍芯3A2000需要3.5秒,而飛騰1500A需要8.2秒。
在PPT的使用上,龍芯也處於優勢,打開同樣一個PPT,龍芯3A2000所消耗的時間幾乎只有飛騰1500A的一半。
不過,在電子表格上飛騰具有優勢,特別是在打開20M的電子表格的情況下優勢異常明顯。
-
JAVA虛擬機
JAVA虛擬機(JDK)是伺服器上的重要平台軟體。
飛騰的JAVA虛擬機依賴於國外的開源軟體代碼,國內沒有開發團隊,一旦出現深層次問題無法維護。
龍芯在JAVA虛擬機有核心開發隊伍,並為開源社區貢獻8.4萬行代碼,累計已解決8個在X86平台同樣存在的JAVA共性問題,經過實際用戶檢驗,能夠保證企業級的穩定性。
-
瀏覽器
瀏覽器是桌面作業系統上的重要平台型軟體。
ARM的瀏覽器(Chrome、Firefox)國內沒有專業開發團隊,飛騰則因為跟隨策略在此碰壁。
龍芯在兩大瀏覽器(Chrome、Firefox)平台有專門開發團隊,而且做了大量工作:
在HTML5、WebGL、WebRTC、Flash以及各類插件上有著專業支持;
在Firefox瀏覽器社區,龍芯是ionMonkey開發的重要力量;
在Chrome社區,龍芯是社區的全球14家主要成員廠商之一,是JS引擎的核心開發廠商,累計向社區貢獻4萬行代碼,因此龍芯在JS引擎性能對比上自然可以獲得更大的優勢,具體性能對比如下圖:
從實際測試結果中可以看出,雖然在性能上龍芯3A2000和飛騰1500A差距不大,但龍芯卻能在JS引擎性能對比上大幅優於飛騰,其原因就在於軟硬體整合優化——用戶最終的體驗是軟體+硬體,相對於飛騰在軟體上跟誰ARM,只能是別人給你什麼,你用什麼,而龍芯則恰恰相反,選擇了自建生態,這使得龍芯可以獲得軟硬體磨合優化的機會。
正如數年前那個CPU性能相對有限的時代,蘋果能依靠基於FreeBSD/Unix二次開發的IOS,基於ARM的授權修改/開發CPU,使蘋果可以對自己開發的CPU和作業系統進行系統優化,並依靠軟硬體優化取得優於安卓用戶體驗。
同理,在國產CPU性能普遍不強的當下,對軟體的優化和軟硬體磨合相對於硬體上5%—10%的提升更為關鍵。
因此,相對於黨政軍辦公常用的軟體和用戶體驗而言,龍芯相對於飛騰的優勢,則如同早年蘋果相對於安卓的優勢。
| 結語
可以看出,在硬體方面,飛騰得益於主頻比龍芯高80%,因而在整數上具有優勢;而龍芯的浮點性能指標頗為亮眼;在訪存性能上,龍芯則有很大的優勢。
在軟體上,雖然飛騰可以跟隨ARM產業生態發展,傍上了ARM這個大款,但就黨政軍辦公而言,龍芯相對於飛騰更有優勢。
雷鋒網註:本文作者鐵流(微信公眾號 tieliu1988),文章為雷鋒網(搜索「雷鋒網」公眾號關注)原創約稿,轉載請聯繫授權並保留完整信息,不得刪減、修改文章。
眾多國產CPU和作業系統大揭底
來源:知乎 作者:北極近日,龍芯在北京開了一場盛大的發布會,並聲稱和Intel最強技術只有30%的差距。因為從某個角度上看,龍芯更是一個自主設計的產品,作為一個中國人是應該感到興奮的。但龍芯的發...
國產晶片CPU的矚目成就與天差地別的發展路線你知多少
據《雷鋒網》、《我愛研髮網》《龍芯官網》等報導:國家「十一五」計開始的自主信息化應用試點後,發現了第一代自主CPU通用處理性能不夠和存在軟體生態問題後,國內CPU研製單位均展開了第二代CPU的研...
中國這一關鍵領域用國外技術授權,會不會處處受制於人?
近年來,在國家大力扶持集成電路產業的背景下,國內從事高性能CPU設計的單位或公司數量不斷壯大。但美中不足的是,幾乎所有單位都認為自己的產品和技術路線符合自主可控標準。比如飛騰在和中國電子合作後,...
中國這一關鍵領域依賴國外技術授權 核心技術受制於人
重發一篇鐵流2年前的文章,略作修改,文末的注釋是剛寫的。近年來,在國家大力扶持集成電路產業的背景下,國內從事高性能CPU設計的單位或公司數量不斷壯大。但美中不足的是,幾乎所有單位都認為自己的產品...
轉發《那個想挑戰Intel的中國晶片公司,背後都有什麼故事?》
收藏文章 評論(104)隨著天河2號成為全球運算最快的超級計算機,並在2015年國際超級計算機大會上蟬聯5連冠,國防科大和飛騰CPU逐漸走進我們的視野。國防科大研究計算機技術起步於50年代末,5...
借勢ARM挑戰Intel?一窺中國芯發展現狀
近年來,隨著ARM在移動端崛起,越來越多的中國IC設計公司加入了ARM陣營,除了華為海思、展訊在手機、平板SoC大展拳腳之外,華為、飛騰、華芯通還試圖借勢ARM進軍伺服器CPU市場,實現對Int...
龍芯3A3000流片成功:與申威、飛騰四核桌面晶片相比,性能如何?
雷鋒網按:龍芯3A3000在去年年底就開始流片,雷鋒網也曾對其上一代產品龍芯3A2000和飛騰1500A進行過比較:《龍芯、飛騰新一代產品即將面世,那麼他們的這一代晶片都做得怎麼樣了?》,那麼...
鐵流:華為「泰山」伺服器真是用自主晶片嗎
在「十二五」科技創新成就展上,華為展出了其第一台ARM平台伺服器「泰山」,並在展板上寫明該伺服器「配備自主研發的Hi1612 ARM架構64位處理器,除存儲單元外均有完整智慧財產權……」一時間國...
國產CPU大戰:龍芯憑什麼第一!
龍芯中科近日宣布,龍芯3A3000四核處理器晶片成功完成流片,並通過了系統測試。龍芯3A3000基於龍芯3A2000設計,進行了結構上的少量改進,比如增加處理器核關鍵隊列項數、擴充片上私有/共享...
AMD授權中國研發X86 CPU,對龍芯、海思等意味著什麼?
據外媒報導,AMD與天津海光先進技術投資有限公司達成協議——AMD向合資公司提供X86授權等技術,合資公司將利用該技術開發只在中國銷售的伺服器晶片,而AMD預計可獲得2.93億美元許可費和版稅收...
真不給力?國產龍芯跟Intel差距到底在哪
近年來,國內IC設計廠商層出不窮。有龍芯、飛騰、申威等老牌設計單位,也有兆芯、宏芯這些新秀,還有在商業上非常成功的海思、展訊等ARM陣營廠商。但在性能上Intel對各路國產始終保持著巨大的優勢,...