一、LoongArch發(fā)布
去年8月,在“2020年CCF全國計算機體系結(jié)構(gòu)學(xué)術(shù)年會”在線會議報告中,龍芯中科的胡偉武老師講解了龍芯自主設(shè)計的CPU指令集——LoongArch,許多業(yè)內(nèi)人士和國產(chǎn)CPU愛好者都非常關(guān)注。
2021年4月15日,經(jīng)過大半年的等待,在山西太原舉辦的“2021年信息技術(shù)應(yīng)用創(chuàng)新論壇”主論壇上,這款備受期待的CPU指令集終于正式發(fā)布。
從2020年二季度開始,龍芯與國內(nèi)第三方知名知識產(chǎn)權(quán)評估機構(gòu)投入上百人月,將LoongArch與ALPHA、ARM、MIPS、POWER、RISC-V、X86等國際上主要指令系統(tǒng)有關(guān)資料和幾萬件專利進行了深入的對比分析。針對被評估的基礎(chǔ)架構(gòu)版本,評估機構(gòu)確認了三個問題:
LoongArch在指令系統(tǒng)設(shè)計、指令格式、指令編碼、尋址模式等方面進行了自主設(shè)計。
LoongArch指令系統(tǒng)手冊在章節(jié)結(jié)構(gòu)、指令說明結(jié)構(gòu)和指令內(nèi)容表達方面與上述國際上主要指令系統(tǒng)存在明顯區(qū)別。
LoongArch基礎(chǔ)架構(gòu)未發(fā)現(xiàn)對上述國際上主要指令系統(tǒng)中國專利的侵權(quán)風(fēng)險。
二、為什么要設(shè)計全新的指令集
CPU指令集也叫“架構(gòu)”,它介于軟件與CPU邏輯電路之間,是對CPU功能及調(diào)用方法的精確描述,設(shè)計基于某種指令集的CPU 就是設(shè)計邏輯電路去實現(xiàn)指令集規(guī)范中描述的功能,CPU的邏輯電路名叫“微架構(gòu)”。編寫匯編程序以及編譯高級語言源代碼,產(chǎn)生的是面向某種指令集規(guī)范的二進制操作碼,每條操作碼對應(yīng)指令集中的一條指令。因此系統(tǒng)及應(yīng)用軟件針對不同指令集的版本,就只能在相同指令集的CPU上才能運行。Java/.net和腳本程序雖然不限定指令集,但它們依賴的Java/.net虛擬機和腳本解釋器,也仍然是以二進制程序的方式存在,不同指令集的CPU就需要不同版本的二進制程序。操作系統(tǒng)和應(yīng)用軟件以及各種硬件的驅(qū)動程序都與指令集深度捆綁,圍繞各種指令集構(gòu)成相互依存的生態(tài)關(guān)系。雖然軟件可能會有多個版本去兼容不同指令集,但每種指令集的生態(tài)都各自獨立。X86和Windows、ARM和Android借助生態(tài)鏈中所有企業(yè)的合力,分別成就了桌面計算機和移動設(shè)備領(lǐng)域的霸主地位,掌控這兩種指令集的Intel和ARM也因此在生態(tài)中具有無上的權(quán)力,對依賴其生態(tài)的任何企業(yè),都能夠一言決興衰、二言定存亡。
國內(nèi)大多數(shù)CPU企業(yè),為了追逐短暫的市場優(yōu)勢,而去依附現(xiàn)成的主流生態(tài),無論是購買流行指令集的授權(quán)還是購買成熟的IP(硅知識產(chǎn)權(quán),例如設(shè)計完成的CPU核心),都是主動地給自己脖子上套上繩索,把自己的命運交托到對手的手里。自主與兼容是對立的關(guān)系,依附于美國主導(dǎo)的生態(tài),也就喪失了自主的權(quán)利,無論為了維持美國的霸權(quán)還是企業(yè)自己的利益,Intel和微軟、ARM和Google隨時都會收緊這些企業(yè)脖子上的繩套,而這些企業(yè)對其生態(tài)的貢獻卻只會讓繩索更加結(jié)實,更加沉重,更加身不由己。無論何種商業(yè)合同,都可以因為觸犯某種“法律”而瞬間失效,當前的國際環(huán)境下美國玩出任何花樣都不稀奇。為了保障我國核心領(lǐng)域信息安全,也為了給整個信息技術(shù)行業(yè)兜底,龍芯中科與合作伙伴們一直在為建設(shè)不受美國干擾的自主生態(tài)而努力,取得了斐然的成績。龍芯基于MIPS指令集擴展的LoongISA指令集完成了獨立的基礎(chǔ)生態(tài),在政企辦公和行業(yè)應(yīng)用中顯現(xiàn)了優(yōu)勢,但陳舊的MIPS基礎(chǔ)指令難以適應(yīng)CPU理論和技術(shù)的進步,已經(jīng)難以承載越來越豐富的應(yīng)用。再加上中美關(guān)系的變化,永久授權(quán)也存在危機,于是龍芯在兩年前立項,開始設(shè)計全新的自主CPU指令集——LoongArch。LoongArch既更加適合現(xiàn)代CPU和操作系統(tǒng)技術(shù),又更能保障自主生態(tài)的安全,是龍芯二十年來最重大的成果之一。
從電子計算機誕生以來,出現(xiàn)過許許多多的指令集,隨著CPU理論和技術(shù)的進步,以及用戶需求和應(yīng)用領(lǐng)域的擴展,指令集也需要與時俱進。指令集落后會影響CPU對新技術(shù)和新理論的應(yīng)用,使CPU在性能、功耗等方面也逐漸落后,也難以在新的應(yīng)用領(lǐng)域中有較好的表現(xiàn),會被用戶放棄,也被軟件開發(fā)者放棄。指令集的軟件數(shù)量與用戶數(shù)量相輔相成,不適應(yīng)時代的指令集也終會被時代拋棄。例如POWER、SPARC、ALPHA、MIPS等等曾經(jīng)風(fēng)光一時的CPU指令集紛紛落幕,也許有無數(shù)種失敗的理由,但終歸結(jié)底還是因為使用這些指令集的CPU喪失了市場競爭力。
保持CPU指令集先進性的一般方式,是向指令集中添加各種新指令,這樣可以保證新設(shè)計的CPU仍然能兼容現(xiàn)有的各種程序,Intel/AMD對x86的擴展、龍芯對LoongISA的擴展都是基于這樣的考慮。但是隨著時間推移,雖然許多舊指令已經(jīng)有了更加精巧的新指令代替,但為了兼容仍然不能從指令集中剔除,補丁摞得越來越多,整個指令系統(tǒng)也就越來越臃腫,對編譯器和CPU設(shè)計都是巨大的負擔。由于在設(shè)計指令集基礎(chǔ)架構(gòu)時的歷史局限性,許多在當時很合理的設(shè)計在現(xiàn)在已經(jīng)成了提高CPU性能的阻礙。龍芯十多年來累計增加了一千多條新指令,用光了MIPS預(yù)留的擴展槽,還要背負起MIPS的歷史包袱,許多問題已經(jīng)積重難返,到了必須推陳出新的時候。Intel也曾一度打算拋棄x86指令集,設(shè)計了更加先進的“IA64(安騰)”,但IA64不兼容x86的程序,x86龐大的軟件生態(tài)反而阻礙了新指令集的推廣和應(yīng)用。MIPS也曾推出重新設(shè)計的MIPS R6版,不兼容舊版的指令集,也遭到了一片冷遇。而ARM的ARM64也不兼容ARM32,卻仍然獲得了成功,并且在低功耗設(shè)備中打得臃腫的x86沒有還手之力,RISC-V作為后來者又從ARM手中搶奪了許多市份額,新指令集存活并壯大的也有許多實例。那么龍芯LoongArch如何才能保證推廣的順利?
三、龍芯LoongArch的特點
一種指令集想要得到成功的推廣和應(yīng)用,先進性是必需的前提。設(shè)計能用的指令集并不困難,困難的要讓指令集盡量完美,這需要深厚的理論知識和豐富的工程實踐經(jīng)驗,正好這兩種龍芯都不缺。
LoongArch是典型的RISC(精簡指令集),使用32位定長指令格式,包含32個通用寄存器、32個浮點/向量寄存器。龍芯以前的LoongISA是從MIPS擴展而來,MIPS R5本身只有279條基礎(chǔ)指令,只有三種指令格式。龍芯之前擴展的新指令有一千多條,已經(jīng)用光了MIPS R5指令格式所支持的擴展位置。于是重新設(shè)計的LoongArch通過精打細算支持多達10種指令格式,在不影響譯碼效率的條件下?lián)碛懈嗟闹噶畈郏壳耙延屑s2000條指令,但仍預(yù)留下了大量的指令槽便于以后繼續(xù)擴展。
LoongArch在設(shè)計之初128位和256位向量指令各有一千多條,在各種測試和優(yōu)化之后已經(jīng)縮減到了各700余條。
在理論上,只需要幾個邏輯門就可以完成任何類型的計算。早期的CPU甚至用若干個加法運算來代替乘法,現(xiàn)代的嵌入式CPU也有許多沒有設(shè)計浮點運算部件,需要計算有小數(shù)點的數(shù)據(jù)時都用整數(shù)運算來模擬。學(xué)生實驗設(shè)計的CPU有的只有十幾條指令也能完成一些任務(wù),但商業(yè)化的通用CPU指令集通常都不下千條。因為CPU指令少時,仍然可以用軟件組合有限的指令來完成復(fù)雜的任務(wù),比如只用整數(shù)加法也能完成帶小數(shù)點的矩陣乘法運算,但是如果CPU設(shè)計了矩陣乘法的電路,那么幾百條幾千條指令的軟件算法只需要一條指令就能完成,性能可能會成百上千倍地提升。另有一些功能卻不需要用硬件實現(xiàn),比如統(tǒng)計字符串長度,用硬件實現(xiàn)也仍然需要循環(huán)。龍芯已有二十年的CPU設(shè)計實踐,對于哪些功能適合用硬件完成,哪些功能更適合軟件實現(xiàn),都有細致的權(quán)衡。因此對LoongArch指令集的取舍展現(xiàn)了龍芯的工程師們二十年經(jīng)驗的總結(jié),對LoongArch的設(shè)計是對CPU和指令集深入理解后的具現(xiàn)。
RISC(精簡指令集)和CISC(復(fù)雜指令集)現(xiàn)在已經(jīng)沒有了本質(zhì)的區(qū)別,為了保證在越來越豐富的應(yīng)用類型中都有卓越的性能表現(xiàn),RISC也會為各種計算增加大量指令。x86指令集作為CISC的代表,在CPU在設(shè)計上,也會把指令譯碼為內(nèi)部的微碼,微碼也是RISC的一種表現(xiàn)形式。只是它們?nèi)匀淮嬖谝恍┩庠诘牟町悾热鏡ISC都是定長指令格式,而以x86為代表的CISC是變長格式。指令定長的優(yōu)點是可以簡化CPU譯碼器的設(shè)計,指令格式更加規(guī)整,但因指令長度限制,而無法使用較大的立即數(shù),也不能在單條指令中支持長跳轉(zhuǎn)。MIPS最大只支持16位立即數(shù),龍芯設(shè)計的指令格式把立即數(shù)范圍擴展到了25位,分支跳轉(zhuǎn)的范圍也從MIPS的±32K(16位)擴展到了±512K(20位),很大程度上避免了數(shù)據(jù)超出范圍時需要拆解為多條指令的情況。變長指令則沒有這樣的限制,而且可以把最常用的指令設(shè)計得很短,這樣相同的源代碼編譯之后的二進制文件往往比定長指令的小,程序中的指令數(shù)量一般也更少。假如每條指令的執(zhí)行時間相同,實現(xiàn)程序功能的指令數(shù)量越少,程序的性能也就會越高。
不過LoongArch由于指令設(shè)計上更加優(yōu)化,摒棄了傳統(tǒng)指令系統(tǒng)中部分不適應(yīng)當前軟硬件設(shè)計技術(shù)發(fā)展趨勢的陳舊內(nèi)容,吸納了近年來指令系統(tǒng)設(shè)計領(lǐng)域諸多先進的技術(shù)發(fā)展成果,在把源碼編譯為目標程序后的指令數(shù)量上甚至比x86略有優(yōu)勢。在Coremark的測試中,程序運行過程中執(zhí)行的指令總數(shù)LoongArch為MIPS的83%,相當于運行效率提高了20%。在類型更加多樣的測試中,綜合測試結(jié)果,LoongArch平均比MIPS快12%,說明全新設(shè)計的LoongArch是成功的,可以為CPU帶來大幅的性能提升。
龍芯的LoongArch指令集不僅在硬件方面更易于高性能低功耗設(shè)計,而且在軟件方面更易于編譯優(yōu)化和操作系統(tǒng)、虛擬機的開發(fā)。
四、以自主為基礎(chǔ),以兼容納百川
CPU指令集除了先進性,要是還具有良好的兼容性,就一定能使推廣難度降低。比如Intel對Itanium寄予厚望時,AMD自主設(shè)計了完全兼容X86的AMD64指令集,從而使Itanium一敗涂地。龍芯的LoongArch指令集也有同樣的考慮,二進制翻譯擴展就是用來解決兼容性的問題。二進制翻譯是把一種指令集的程序翻譯到另一種指令集的CPU上去運行,已有多種成功的案例。比如 Transmeta CPU在內(nèi)部實現(xiàn)的是一種超長字指令集,但對外的指令集界面則是x86,可以兼容任何的x86程序。開源軟件qemu則是使用了純軟件模擬的方案,翻譯運行的效率遠遠不如Transmeta,但具有更高的靈活性,可以實現(xiàn)任何指令集互譯。蘋果曾兩次更換指令集,從Power到x86,再從x86到ARM,都是通過二進制翻譯繼承以往的軟件生態(tài),實現(xiàn)軟件生態(tài)的平滑過渡。龍芯在十年就前開始了對二進制翻譯的研究和嘗試,從3A1000開始就在進行指令集翻譯的實驗,在3A1000上流暢地運行了Windows2000,但是由于種種原因而一直沒有推廣。現(xiàn)在經(jīng)過全面的準備,龍芯把之前在LoongISA上對二進制翻譯的成果轉(zhuǎn)移到了全新的LoongArch上,除了繼承自己以往生態(tài)之外,也有收割x86/ARM軟件生態(tài)的打算。
LoongArch的二進制翻譯在設(shè)計思路上與現(xiàn)有的同類產(chǎn)品都不一樣,它是軟硬件結(jié)合的技術(shù)方案,通過提取主流指令集的主要特征,實現(xiàn)了高效的指令集“并集”,既有接近硬件翻譯的效率,又有軟件翻譯的靈活性,并以此達到以我為主,兼容并蓄的目的。Transmeta的二進制翻譯完全喪失了自我,如果通過它只能看到x86指令集,那么它就是x86指令集的CPU,其本質(zhì)與國內(nèi)一些兼容主流指令集的CPU沒有什么不同,當Intel認為它會與自己的產(chǎn)品發(fā)生競爭時,就可以用掌控了x86指令集的雙手舉起大棒,把對手從自己的生態(tài)中踢出去。蘋果及微軟實現(xiàn)的軟件翻譯,也僅僅針對自家的軟件生態(tài),并不能對外擴張。龍芯的二進制翻譯以自主的LoongArch指令集為基礎(chǔ),既不影響自主生態(tài)的建設(shè)和發(fā)展,又能吸收利用其它指令集的生態(tài),實現(xiàn)全面兼容。
隨著跨平臺軟件開發(fā)的興盛,特別是為國產(chǎn)CPU開發(fā)軟件時,由于國內(nèi)CPU企業(yè)收集了各種指令集,軟件開發(fā)者往往需要為每個目標平臺準備一套測試設(shè)備,開發(fā)調(diào)試都極度繁瑣。如果使用LoongArch指令集的CPU,就可以在一臺電腦上虛擬出各種常見指令集的硬件環(huán)境,可以提高開發(fā)效率,降低開發(fā)成本。不同指令集的程序甚至可以在同一個系統(tǒng)環(huán)境中運行,對開發(fā)工具的搭配也可以更加靈活多樣,各種生產(chǎn)力軟件也不再有指令集版本的區(qū)別,都可以自由運行。對開發(fā)者更加友好的工作環(huán)境,有助于豐富LonngArch指令集原生軟件的種類和數(shù)量,實現(xiàn)自主軟件生態(tài)的良性發(fā)展。
在行業(yè)應(yīng)用方面,不但龍芯以往積累的軟件生態(tài)能夠通過二進制翻譯完美兼容,而且能以較高的效率運行其它指令集的軟件,x86和ARM的設(shè)備不再是不可替換。隨著國產(chǎn)操作系統(tǒng)和應(yīng)用軟件的持續(xù)發(fā)展和推廣,大部分與國計民生相關(guān)的行業(yè)和單位都會陸續(xù)更換成國產(chǎn)的硬件和軟件,然而許多基礎(chǔ)軟件和外設(shè)的驅(qū)動程序尚未完成對國內(nèi)各種指令集的全面覆蓋,造成電腦和軟件匹配上存在困難。龍芯的全兼容方案就可以解決這個痛點,常用的指令集都能兼容,不再需要等待軟件開商的移植進度,可以先用起來,解決迫在眉睫的問題。等軟件開發(fā)商推出了運行效率更高的LoongArch指令集原生版本的軟件之后,只需要對軟件進行更換就可平穩(wěn)過渡。
對于普通用戶來說,LoongArch的軟件生態(tài)已經(jīng)能夠滿足普通辦公和影音娛樂,只是專業(yè)應(yīng)用和游戲軟件還有欠缺。但在二進制翻譯技術(shù)的支撐下,其它指令集的應(yīng)用軟件雖然達不到原生的運行效率,但也可以正常使用。比如只是偶爾使用一下PhotoShop而不以此為主業(yè),或者偶爾玩一下游戲而不追求3A大作,那么完全可以開始嘗試使用龍芯CPU的國產(chǎn)電腦。只有用戶基數(shù)增長到一定程度,軟件開發(fā)商才會正視用戶的需求,自主的生態(tài)建設(shè)才能夠越來越完善。
五、打牢自主CPU持續(xù)發(fā)展的根基
龍芯向來重視自主生態(tài)建設(shè),與自主的信息技術(shù)產(chǎn)業(yè)鏈共同發(fā)展。
為了夯實國產(chǎn)生態(tài)的用戶基礎(chǔ),龍芯一直積極地推動中小學(xué)使用國產(chǎn)操作系統(tǒng)和應(yīng)用軟件教學(xué)。不但邀請各中小學(xué)校長參觀龍芯中科,了解龍芯在各方面的應(yīng)用,還參與中小學(xué)信息技術(shù)課程的教材編寫,種下自主國產(chǎn)軟硬件的種子,為改變中小學(xué)是Windows和Office培訓(xùn)班這一現(xiàn)狀而努力。
為了培養(yǎng)信息技術(shù)產(chǎn)業(yè)的人才,提升整個行業(yè)的技術(shù)水平,龍芯不但編寫了大量教學(xué)書籍,還與各個高校聯(lián)動以教會學(xué)生造計算機為己任。設(shè)計了大量教學(xué)用的CPU實驗工具,各種開發(fā)板,編寫了專業(yè)的計算機體系結(jié)構(gòu)(本科/研究生)教材,融合教學(xué)與實踐。為培養(yǎng)和選拔CPU設(shè)計人才而舉辦“龍芯杯” ,讓學(xué)生自己設(shè)計CPU。現(xiàn)在還在設(shè)計只有幾十條指令的LoongArch子集,與RISC-V相當,供學(xué)生學(xué)習(xí)和實驗。
與龍芯有關(guān)的出版物(部分)
為了推廣LoongArch指令集,也為了提高合作企業(yè)在市場中生存和競爭的能力,龍芯將聯(lián)合產(chǎn)業(yè)鏈伙伴在適當?shù)臅r間建立開放指令系統(tǒng)聯(lián)盟,在聯(lián)盟成員內(nèi)免費共享LoongArch及有關(guān)龍芯IP核。像RISC-V這樣的開源指令集組織并不提供開源的CPU核心設(shè)計,而龍芯會向聯(lián)盟成員免費提供用于嵌入式CPU的高性能IP。
為了軟件生態(tài)的完善,龍芯積極投身國際主流開源社區(qū)工作,成為多款開源軟件MIPS分支的實際維護者,現(xiàn)在也是LoongArch分支的實際維護者。自己負責(zé)了龍芯版Linux系統(tǒng)核心的移植和維護,也開發(fā)和優(yōu)化了大量的基礎(chǔ)模塊。比如實現(xiàn)了龍芯CPU上的Java虛擬機支持,對OpenJDK的貢獻度連續(xù)兩年名列前茅。對.net Core、瀏覽器的移植和優(yōu)化也解決了大量應(yīng)用依賴運行環(huán)境的問題。對UE4和ffmpeg等等的移植也為游戲及影音娛樂做好了準備。對各種開發(fā)工具和編譯工具的移植也實現(xiàn)了在龍芯平臺上軟件開發(fā)無障礙。2020年,龍芯完成了2萬個以上的軟件包向LoongArch移植的工作,后續(xù)還需要進行各種性能優(yōu)化。目前正在游說各種開源軟件的上游,從上游推送支持LoongArch架構(gòu)的軟件,接受所有開發(fā)者參與龍芯軟件生態(tài)的建設(shè),結(jié)束以前某些項目只能自己挖坑自己填的局面。
除了各種開源軟件,龍芯也積極聯(lián)合國內(nèi)各大軟件企業(yè)參與自主生態(tài)建設(shè)。比如WPS、永中Office等辦公軟件,比如億圖圖示、中望CAD等設(shè)計類軟件都有支持龍芯的版本。在發(fā)布LoongArch的展會上,還展示了在基于LoongArch的首款CPU(3A5000測試版)上運行UOS系統(tǒng)的情況,并演示了運行基于其它主流指令系統(tǒng)的復(fù)雜應(yīng)用程序。
龍芯中科已經(jīng)在一定范圍內(nèi)發(fā)布了LoongArch的基礎(chǔ)架構(gòu)指令系統(tǒng)手冊。待完成包括境外專利分析在內(nèi)的進一步知識產(chǎn)權(quán)評估后,龍芯中科將在更大范圍內(nèi)發(fā)布更完整的LoongArch指令系統(tǒng)手冊。在完整的LoongArch指令系統(tǒng)手冊正式公開后,必將吸引更多的對此有興趣的開發(fā)者,參與各種開源軟件的匯編優(yōu)化和移植、進行原創(chuàng)軟件的開發(fā)和優(yōu)化,投身于自主軟件生態(tài)的建設(shè)。
《龍芯架構(gòu)參考手冊》
六、龍芯的未來會更好
我國有很多CPU企業(yè),設(shè)計了自主CPU指令集的也不只一家,但能設(shè)計出LoongArch的只有龍芯中科一個。這不止與企業(yè)自身的技術(shù)水平有關(guān),也與企業(yè)的目標和理念有關(guān)。早期的“方舟”是從日立的一個嵌入式CPU外包項目發(fā)展而來,設(shè)計指令集時不會考慮先進性、兼容性、擴展性,僅僅是為了免除指令集授權(quán)的成本。其它的各種嵌入式CPU指令集也不是以通用CPU為發(fā)展目標,沒有向著頂峰奔跑的勇氣。申威也是一家值得尊重的企業(yè),但它的自主指令集是為了發(fā)展超算,權(quán)衡指令集通用性時不如龍芯全面,也不會考量與桌面計算機軟件生態(tài)的兼容性。龍芯中科以全面的信息技術(shù)產(chǎn)業(yè)自主為目標,把x86和Windows作為主要的對手,就必須時刻考慮如何建設(shè)一個完整的軟硬件生態(tài),實現(xiàn)自主產(chǎn)業(yè)鏈對進口產(chǎn)品的全面代替。龍芯為了這個遙遠的目標奮斗了二十年,當年龍芯項目組的年輕人也都已經(jīng)滿頭斑白。沒人理解時,他們堅持,被人辱罵時,他們沉默,發(fā)展完全自主的CPU技術(shù)已經(jīng)成為了他們生命中的執(zhí)念。直到近兩年,由于國際形勢的變化,“造不如買、買不如租”、“技術(shù)無國界”等論調(diào)遭人唾棄,才證明龍芯存在的意義。
相對來說,國內(nèi)依附于主流生態(tài)的通用CPU企業(yè),卻往往只把自主的國產(chǎn)通用CPU視為敵人,大有為虎作倀之意。但奴顏卑膝換不來尊重,犧牲自由換來的風(fēng)光不能長久永續(xù),人家施舍的殘羹剩飯反手就能打翻,所謂的融入國際主流只是自欺欺人而已。
龍芯二十年的苦熬沒有白費,堅持自主創(chuàng)新磨礪出了超群絕倫的CPU設(shè)計能力。在發(fā)布LoongArch指令集的展會上,龍芯3A5000(測試版)初露崢嶸,在操作系統(tǒng)和軟件環(huán)境尚未足夠優(yōu)化的情況下,通過一些性能測試證實它已經(jīng)達到了設(shè)計目標,與同樣4核4線程的主流CPU相比性能差距已經(jīng)不大。待6月正式發(fā)布時,隨著軟件優(yōu)化逐步完善應(yīng)更接近主流水平,二十年累計的研發(fā)費用不及Intel一個月的研發(fā)成本,取得這樣的成績殊為不易。今年龍芯還會發(fā)布16核及64核的服務(wù)器CPU產(chǎn)品,已經(jīng)具有了與Intel/AMD在服務(wù)器領(lǐng)域競爭的能力。下一代3A6000將會使用新的內(nèi)核設(shè)計,預(yù)計單核性能會有50%的提升,屆時龍芯CPU的性能水平將真正能與主流CPU匹敵。
有了性能足夠的自主CPU,有了生態(tài)無憂的自主指令集,國內(nèi)還欠缺的只有先進工藝CPU的生產(chǎn)能力。因為生產(chǎn)工藝無法一蹴而就,也超越了一家CPU設(shè)計企業(yè)的能力,龍芯只能把CPU的設(shè)計指標限定為境內(nèi)基本可控的工藝。因為工藝選型必須保守,也促使龍芯只能盡力提高對CPU核心的設(shè)計水平。國內(nèi)部分CPU只能依靠更新工藝降功耗提頻率,龍芯即使面對它們的競爭,也堅持使用相對落后的生產(chǎn)工藝,近期美國制裁引發(fā)的一些風(fēng)波,也證明龍芯的選擇是正確的,生產(chǎn)環(huán)節(jié)至少保證了相對的安全。
晦暗的日子已經(jīng)過去,只要龍芯繼續(xù)堅持自主發(fā)展的理念,龍芯未來的道路一定鋪滿陽光。
有志者事竟成,破釜沉舟,百二秦關(guān)終屬楚;
苦心人天不負,臥薪嘗膽,三千越甲可吞吳。