國產CPU遭吐槽,估計有兩方面原因_風聞
密集雨-反器材并非不可战胜,用暴风机甲血战到底2小时前
【本文由“小飛俠杜蘭特”推薦,來自《運營商大規模集採,國產CPU佔比飆升至近70%》評論區,標題為小編添加】
- 小飛俠杜蘭特
- 國產CPU遭開發者吐槽:新龍芯使用舊代碼,新功能無法實現過去的龍芯以及大量國內自研發的處理器,還是依賴於MIPS指令集,不過這一代的龍芯處理器,號稱擁有完全自主研發的LoongArch指令集,並且兼容MIPS指令集,這可以讓開發人員在不用考慮兼容性的同時,利用全新指令集開發出更多功能和應用。
按照龍芯的説法,雖然兼容MIPS指令集,但LoongArch指令集有大約 2000條專有指令,包括二進制轉換擴展指令 、向量處理擴展指令、高級向量處理擴展指令和虛擬化擴展指令。
不過現在情況似乎和我們想象的有一些不同,由於龍芯這樣的處理器主要是使用Linux系統,所以要體現出新指令集的優勢,就必須要在Linux系統中有所展現。
不過很多開發者發現,現在龍芯在Linux上並沒有使用新的程序代碼來啓用LoongArch指令集,還是繼續用着MIPS64位的舊代碼,來驅動龍芯處理器。
這在各大Linux社區都引起了開發人員的熱議,很多開發者對新一代的龍芯處理器表現出了不滿和悲觀。
一些軟件開發商甚至公開吐槽龍芯,表示龍芯一直説自己新一代處理器不是基於MIPS指令集,但現在開發人員看到的只是MIPS指令集的一個副本,龍芯使用的依然是過時老舊的MIPS指令集,只是換了一個名稱。
還有一些開發人員,認為現在的龍芯和過去基於MIPS指令集的處理器並沒有不同,並沒有讓新架構的處理器正常地發揮自己的性能和功能。
事實上,如果就使用MIPS指令集的話,龍芯3A5000和3C5000這樣的CPU也沒有問題,因為它們都可以兼容MIPS指令集,當然可以執行MIPS64平台的代碼了。
而且在很多開發人員看來,除了多出的2000條專有指令,龍芯的LoongArch和MIPS64平台之間似乎沒有太多差異,在龍芯新的處理器上運行經過驗證的老MIPS代碼,都能正常工作。
但是由於龍芯沒有啓用LoongArch指令集,這樣用老的代碼就意味着龍芯承諾的新功能無法開啓,對於開發者而言,龍芯的新處理器意義就不是那麼大了。
估計有兩方面原因,一方面是編譯器和運行庫的配套研發沒有跟上;另一方面是龍芯的新指令集可能還是硬件轉譯成mips指令進行實現的,目前x86處理器的兩大廠都是用硬件轉譯的方式,將傳統x86指令轉譯成微碼進行執行的。早前就有龍芯運行Windows的報道,方式就是硬件轉譯,將不定長的x86指令轉換成龍芯的配套指令。但硬件轉譯缺點就是效率較低,初期頻率很難提高,酷睿遇到過,推土機遇到過,龍芯想這樣做應該也會遇到。