新四季網

龍芯究竟是什麼水平(龍芯的發展或遠超你的想像)

2023-04-12 11:41:00 1

「如果把人類國家的歷史發展比作賽馬的話,以一千年為一圈,有一匹馬在前面幾圈一直跑在最前面,領先世界,只是到最近幾百年才落後,並且最近是幾十年,這匹馬已經飛快地追了上來。

如果是你,你會不會在這匹馬上押注呢?」

這段話是胡偉武所說,當時他在中科院計算所做一個CPU設計的講座,我坐在臺下聽講。

講座的具體細節我早已忘記,但這段話讓年輕的我聽得「熱血沸騰」,覺得中國真是大有前途。

後來只有J20橫空出世的時候才再一次有類似的衝動:要找機會,為國效力!

可見胡偉武不但技術很牛,還是一個特別善於鼓舞人心的領導。

當時龍芯剛起步,33歲的胡偉武帶著一幫年輕人沒日沒夜地幹,終於做出了龍芯一號(小名狗剩),想了解詳情的同學可以去搜一下《我們的CPU》。

一晃20年過去了,胡偉武老師已經滿頭白髮,當年的狗剩已經長大成人,最新的龍芯3A5000,主頻2.3GHz-2.5GHz,包含4個處理器核心。

根據國內第三方測試機構的測試結果:

「龍芯3A5000處理器在GCC編譯環境下運行SPEC CPU2006的定點、浮點單核Base分值均達到26分以上,四核分值達到80分以上。基於國產作業系統的龍芯3A5000桌面系統的Unixbench單線程分值達1700分以上,四線程分值達到4200分以上。上述測試分值已經逼近市場主流桌面CPU水平,在國內桌面CPU中處於領先地位。」

雖然新聞報導中經常會提到龍芯被用到網安、能源、交通、金融、物聯網、工控、超算、北鬥衛星等領域,可是我們身邊並沒有看到有多少龍芯電腦。

這是因為龍芯走了一條最難走的路,國產CPU當中,有這麼幾個流派:

1. 合資 x86授權派

如天津海光和兆芯,他們獲得了AMD和威盛的授權,可以設計製造x86CPU,可以利用現有的軟體生態。

但是美國商務部已經把它們拉上了「黑名單」,無法獲取最新的技術架構了,發展路徑被堵死。

2.ARM指令集授權

如華為海思和飛騰,市場廣闊,軟體生態也好,但指令集控制在別人手中,如果被制裁,也是死路一條。

3.指令集授權 自研指令集

典型代表就是龍芯,最早用MIPS指令集,後來乾脆買斷,在此基礎上發展出了完全自主可控的LoongISA指令集。

龍芯雖然有著最為遠大的志向:要建立和Intel / ARM 並列的生態系統。但背後也有一個大坑:沒有軟體支持。

LoongISA指令集和別人都不一樣,第一步必須得找個作業系統支持,把它移植過來。

感謝開源的Linux,這一步並不是很艱難。

有了Linux是不是就完事無憂了,不!編譯器必須得移植過來:

很多軟體運行在虛擬機/解釋器當中,它們也必須得移植:

再把OpenOffice,Firefox等辦公應用軟體移植過來,一個基本可用的系統就出現了。

但是這樣的Linux這樣的系統,開發人員能用,黨政軍「被迫」也能用,普通消費者用不了。

因為沒有微信、QQ、支付寶、Photoshop、PR、AE、各種遊戲..... 這才是x86生態最厲害,最吸引人的地方。

當然可以把這些軟體一個個移植過來,前提是廠商得願意,得有動力(利益)才行,要不然,哼哧哼哧移植過來,沒人用,投入的人力物力都浪費了。

還有一種辦法是不做移植,採用翻譯的辦法,把x86程序的二進位代碼翻譯成LoongISA指令集。

翻譯的方式有三種:

(1)軟體翻譯

相當於搞了一個模擬器,以純軟體的方式構建了一個虛擬的主機環境。如qemu、蘋果的羅塞塔、以及微軟Windows在x86上模擬arm的技術等等。

這種方式的有點是極其靈活,指令集升級只需要更新軟體即可。缺點是效率比較低。

(2)硬體翻譯

Linus早期加入的Transmeta CPU就是這個思路,它會把x86指令轉換自己的指令來執行。雖然能直接運行x86上的程序,但是卻受制於Intel和微軟,雖然Transmeta在和Intel的訴訟中獲勝,在市場上卻黯然落敗

(3)軟硬結合翻譯

龍芯本質是軟體翻譯,但是在指令集中專門提供了硬體指令來加速翻譯過程,既有軟體翻譯的靈活性,又有硬體的效率。

在運行Windows(x86)程序時,由於龍芯的Linux系統並不支持Windows系統的API(例如CreateProcess),需要一個Wine軟體做中間層,把Windows API轉化成Linux API(例如fork)。

最終,龍芯的翻譯情況是這樣的:

看起來非常複雜,但是沒有辦法,IT產業現狀就是如此:不但要自主,還要兼容。

龍芯為了達到這個目標,需要具備「2 3 3 2」共十個能力。

其中,第一個「2」是指兩大核心軟體:BIOS、作業系統內核(含驅動和虛擬化);

第二個「3」則是三大編譯器,GCC、LLVM、GOLANG;

第三個「3」則是三大虛擬機:Java、JavaScript、.NET;

第四個「2」則是兩大二進位翻譯系統:X86、ARM。

龍芯要自建生態,如果是之前,我是絕對不看好的。因為我覺得舊的生態一旦形成壟斷,後來者再無機會。

桌面生態被Windows Intel佔據,移動被Android ARM壟斷,後來者想從它們的飯碗中搶飯吃,要走的路非常之長,長到幾乎難以看到盡頭。

與其如此,還不如努力探索、抓住下一波浪潮。

但是這幾年,我們看到川普搞起貿易戰,以舉國之力打壓華為,斷掉華為晶片供應,把一大批中國的公司拉入實體名單,再看看最近以美國為首的西方世界對俄羅斯的瘋狂制裁,突然又看到了希望的曙光:這是逼著中國建立自主可控的生態體系啊!

之前生態市場被壟斷,我們只能在一邊看著,難以入局,現在存在著未知的被斷供的風險,不發展自己的晶片、不去建立自己的生態體系,還能怎麼辦呢?

一旦被徹底斷供,我們至少還有一套可以獨立的,可以運轉的IT系統。

希望龍芯及其生態能夠發展起來!

,
同类文章
葬禮的夢想

葬禮的夢想

夢見葬禮,我得到了這個夢想,五個要素的五個要素,水火只好,主要名字在外面,職業生涯良好,一切都應該對待他人治療誠意,由於小,吉利的冬天夢想,秋天的夢是不吉利的
找到手機是什麼意思?

找到手機是什麼意思?

找到手機是什麼意思?五次選舉的五個要素是兩名士兵的跡象。與他溝通很好。這是非常財富,它擅長運作,職業是仙人的標誌。單身男人有這個夢想,主要生活可以有人幫忙
我不怎麼想?

我不怎麼想?

我做了什麼意味著看到米飯烹飪?我得到了這個夢想,五線的主要土壤,但是Tu Ke水是錢的跡象,職業生涯更加真誠。他真誠地誠實。這是豐富的,這是夏瑞的巨星
夢想你的意思是什麼?

夢想你的意思是什麼?

你是什​​麼意思夢想的夢想?夢想,主要木材的五個要素,水的跡象,主營業務,主營業務,案子應該抓住魅力,不能疏忽,春天夢想的吉利夢想夏天的夢想不幸。詢問學者夢想
拯救夢想

拯救夢想

拯救夢想什麼意思?你夢想著拯救人嗎?拯救人們的夢想有一個現實,也有夢想的主觀想像力,請參閱週宮官方網站拯救人民夢想的詳細解釋。夢想著敵人被拯救出來
2022愛方向和生日是在[質量個性]中

2022愛方向和生日是在[質量個性]中

[救生員]有人說,在出生88天之前,胎兒已經知道哪天的出生,如何有優質的個性,將走在什麼樣的愛情之旅,將與生活生活有什么生活。今天
夢想切割剪裁

夢想切割剪裁

夢想切割剪裁什麼意思?你夢想切你的手是好的嗎?夢想切割手工切割手有一個真正的影響和反應,也有夢想的主觀想像力。請參閱官方網站夢想的細節,以削減手
夢想著親人死了

夢想著親人死了

夢想著親人死了什麼意思?你夢想夢想你的親人死嗎?夢想有一個現實的影響和反應,還有夢想的主觀想像力,請參閱夢想世界夢想死亡的親屬的詳細解釋
夢想搶劫

夢想搶劫

夢想搶劫什麼意思?你夢想搶劫嗎?夢想著搶劫有一個現實的影響和反應,也有夢想的主觀想像力,請參閱週恭吉夢官方網站的詳細解釋。夢想搶劫
夢想缺乏缺乏紊亂

夢想缺乏缺乏紊亂

夢想缺乏缺乏紊亂什麼意思?你夢想缺乏異常藥物嗎?夢想缺乏現實世界的影響和現實,還有夢想的主觀想像,請看官方網站的夢想組織缺乏異常藥物。我覺得有些東西缺失了