以下是影片的逐字稿:
龍芯的故事
,80、90、00 後們想必都不會陌生。
曾經有個說法叫做:處理器是一臺電子裝置的芯,即使胳膊腿做的再棒,那芯都是別人的,是生是死依舊被人握在手裡。
於是 2000 年的時候,中科院計算所開始嘗試製造電腦的 CPU,試圖追趕,上世紀七八十年代就已經入局微處理器行業的科技巨頭:英特爾,與 AMD。
後來龍芯專案
成功入選了國家的 863 計劃
,得到了國家戰略層面上的扶持,龍芯也成為了我國自研處理器的一個代名詞。
現在再看這個想法的確是高瞻遠矚的,因為從後來英特爾被爆出來的 ME 後門事件來看,假如別人真的起了壞心思的話,是真的有能力在你神不知鬼不覺的情況下,往處理器裡嵌入一個微型的間諜系統的。
然而高瞻遠矚是一回事,實際落地執行起來卻是另外一回事:滿打滿算,龍芯從立項至今已經過去 20 多年的時間了,可是這麼多年了,我們卻好像從沒聽說過,身邊有誰在用搭載了龍芯處理器的電腦……
難道這麼多年來,龍芯一直在騙經費?
其實啊,龍芯電腦早就有了今天我還搞來了一臺,那麼小夥伴們,我不叫託尼老師我是米羅,
龍芯電腦,能不能用、好不好用、都有誰在用,就讓這期影片,給你答案~
這臺龍芯電腦從外觀上看,和普通的臺式電腦是一樣的,機身上的介面也和普通電腦上的差不多。
拆開面板之後,看到也是一整套標準 PC 的玩意:金士頓的固態硬碟,國產的紫光 DDR4 記憶體,一個額定 300W 的 ATX 標準電源,以及一塊電腦主機板。
而在主機板上,有前面板 USB 介面,有 SATA 硬碟介面,M。2 固態硬碟的插槽,甚至還有一個用來安裝標準無線網絡卡模組的 MINI PCI-E 插槽,從這個介面配置上看,龍芯電腦的配置還是挺現代的。
PCI-E 插槽上還有一塊外觀上未標明具體型號的 AMD 顯示卡,背面有一個 HDMI 的數字訊號輸出介面,這些個配置組成了一臺今天我們面前的龍芯電腦,
看起來和普通的家用電腦一樣
,對吧。
不過就像 AMD 處理器要配搭載了 AMD 晶片組的主機板、英特爾處理器要配搭載了英特爾晶片組的主機板才能用一樣。
這臺電腦裡的主機板啊,其實也是專門給龍芯處理器設計的:m-ATX 規格,比普通桌上型電腦的 ATX 規格主機板要小上一些,晶片組搭載了一枚龍芯自研的 7A1000 橋片,用來承擔處理器與主機板各個部件和介面間的通訊。
而具體的重頭戲呢,自然在這個下壓式散熱器之下了,這是一枚龍芯 3A5000 處理器,它是龍芯在今年七月剛剛推出的一款桌面級處理器。
四顆邏輯核心,最高工作主頻 2。5 GHz,據說它的效能表現與當今的英特爾處理器相當,已經步入到了 “ 在現實世界中能用 ” 的狀態 —— 是不是真的這麼回事咱們一會兒再說,小夥伴們先耐下心來繼續往下看。
上電,開機。
以往我們給電腦開機,第一個畫面一般顯示的是各家品牌的 LOGO,而這臺龍芯電腦開機之後的第一個畫面卻是四個碩大的漢字:崑崙韌體。
這是一家國內信創公司製作的 UEFI 啟動環境。u1s1,
在電腦開機之後第一個畫面顯示出來的就是中文,這個感覺還是挺有視覺衝擊力的。
然後就是引導進入作業系統,這臺龍芯電腦預裝的作業系統不是我們常見的 Windows,而是龍芯中科基於 Linux 核心系統修改而來的發行版系統:
Loongnix 系統,
所以操作邏輯是 Linux 上面的那套,與我們平時的使用習慣不同。
由於之前我看有人說現在龍芯的效能已經和 AMD、英特爾差不太多了,所以為了印證這個說法我們先來跑個分。
Linux 上用來跑分的工具是一個叫做 UnixBench 的程式,評分的邏輯類似於 Windows 平臺上的 PCMark,講求綜合性能表現。在這套基準測試中,龍芯 3A5000 的單核成績為
1772
,多核成績為
4453
。
所以這個得分算個什麼水平呢?
由於 UnixBench 只有在類 Unix 系統上才有,所以為了對比,我們還得再找一臺電腦,裝好 Linux 作業系統,再跑一遍測試,才能形成對比參照。
結果不太湊巧的是,我在自己的庫存裡搜刮了一圈,只找到了臺聯想今年釋出的 YOGA 筆記本是暫時沒在用的,可以騰出來裝 Linux 的。
不過這個問題也不是很大,
因為別看它是檯筆記本,但它用的是最新一代的英特爾 i5 處理器。
在之前的測試中,它的效能表現與桌上型電腦上面的 i7-7700k 處理器相當,相當於說我們完全可以把它看作是一臺三年前的高效能遊戲主機,這麼著一個來回,參照的物件就有了。
而在實際的 UnixBench 測試中,這檯筆記本跑出了單核 2487,多核 4607 的成績。換算一下就相當於說,對比三年前的高效能遊戲桌上型電腦,龍芯這塊 3A5000 處理器的多核效能基本持平,單核效能卻弱了大概 30%。
這個效能表現放到現在的消費級市場上,肯定算不得亮眼。
雖然他跟三年前的 i7 差不多,但是當年的 i7 放到現在連英特爾最新的 i3 還不如,那 i3 跟 i9 處理器中間又差了多少個龍芯咱們大家又不是沒點兒數,
所以現在要說龍芯它跟 AMD、英特爾沒什麼差距,實在是有些捧殺它,言過其實了。
但要是換個角度想,作為一家比紅藍兩大巨頭晚入局了 20 多年的廠商,龍芯能在效能上追趕到只剩下三年左右,已經是在卯足了勁往前衝的,照這個勁頭,那說不定哪天就一個爆發反殺了呢也說不定。
所以純就這個效能表現來說,雖然有不足,但我們對於龍芯也真的沒有什麼好指摘的。
但是……純粹的效能分數是一回事,實際用起來那就又是另外一回事了。
因為龍芯電腦……
它好像什麼都做不了啊。
我們來重新捋一下,在龍芯的這個 Loongnix 系統裡,大概有這麼些個軟體啊:
一個用來上網的 “ 龍芯瀏覽器 ” —— 是基於谷歌 Chromium 瀏覽器專案修改而來的。
有金山的 WPS Office —— 一個用來驗證龍芯平臺穩定性的非正式版本,只能試用 30 天;以及一些 GameBoy 味道非常濃的 2D 街機遊戲。。。
而除了上面這些,以及系統自帶的一些工具之外,
在 Loongnix 上幾乎什麼可堪用的圖形化程式都沒有了
:包括飛書、騰訊會議、QQ、Steam、GIMP、OBS 這些個已經有對應 Linux 版本的程式,
在 Loongnix 的軟體源中一個都搜不到
,直接下載軟體包安裝則會提示安裝失敗,從原始碼進行編譯安裝的話很多程式也會因為缺少各種各樣的基礎依賴而報錯。
那這個問題可就大了 —— 效能稍微差點也不是不能用,那麼多列印店、小網咖的機器也不見得有多好,可你龍芯電腦上一個能用的程式都沒有,這不就是金玉其外、敗絮其中的廢鐵疙瘩嘛。
可能有些折騰過 Linux 的小夥伴要說了,Loongnix 裡面的軟體少,你不會把系統換裝成軟體更豐富的 Arch Linux 或者深度 Linux 嗎?或者你直接拿個 Win 7、Win 10 的安裝 U 盤往機器上一懟把機器重灌成微軟 Windows,不就 P 事都沒有了嗎?
嘖嘖嘖 —— 想法很美好,
但是……不行!
為什麼不行呢?因為龍芯這個問題已經超脫軟體的範疇了,它的根源在於,龍芯處理器有別於英特爾、AMD,使用的是一套龍芯自研的指令集架構:LoongArch,使得幾乎沒有任何主流的生態、程式和作業系統平臺能夠直接在龍芯處理器上執行。
這個處理器的指令集架構啊,就好比是咱們人類語言裡的那個語種,英特爾 1978 年開始生產 x86 指令集架構的處理器,後來還把 AMD 和微軟都拉上了車,三家一起從硬體、作業系統兩個方向發力,把 x86 指令集做成了桌面市場上的絕對壟斷。
英特爾幾十年前的這波操作就好比是大航海時代英國在全球範圍內的攻城略地,在全球插滿了它的殖民地,把英語變成了全球通用的語言,後來的人要想參與到國際交流中,就必須得說英語。
同樣的,在現在的計算機世界中,x86 就是這個通行的 “ 英語 ”,你不論是寫程式、寫作業系統還是寫編譯器,都需要首先基於 x86 指令集架構,以它的思路和規範進行開發。
結果就在十幾年之後,龍芯來了。
作為一個後來者,龍芯要想入局最簡單的辦法那肯定就是和英特爾說一樣的語言,開發 x86 架構的處理器,這樣的話也能保證目前世界上的大部分程式都可以在龍芯上直接執行。
但是美國的英特爾可以把 x86 架構開放給一家美國企業,但卻絕對不可能把它授權給一箇中國的企業 —— 尤其是一個有國家科研院所背景的企業。
於是龍芯只能一切自己做:所以它先是收購了 MIPS 公司的指令集技術,然後在 MIPS 指令集的基礎上打磨出來了一個名叫 LoongISA 的指令集,這就是龍芯前幾年一直在乾的事。
然後在獲得了打磨 MIPS 指令集的經驗和技術積累之後,龍芯才終於在去年推出了全新的 LoongArch 指令集架構,脫胎換骨。
就在幾個月之前,LoongArch 的中斷模型被正式批准納入 ACPI 國際規範,相當於在此之後,納入了 ACPI 規範的指令集架構變成了三個:
一個是 x86,來自美國的英特爾,一個是 ARM,來自英國的安謀控股,另外一個就是 LoongArch,來自中國,中科院,龍芯。
到了這一步,其實就意味著,自研架構,龍芯做成了,這 20 年來的成果不是空氣。但是這也意味著龍芯失去了在我們普通使用者接觸最多的桌上型電腦、筆記本這種 “ 桌面平臺 ” 與國際廠商競爭的能力,因為它沒應用啊。
這個事其實我在三個月前跟大家聊鴻蒙的時候咱們就討論過,當時鴻蒙遇到的就是這麼個雞生蛋、蛋生雞的問題:
一個新的平臺要想起來,需要有豐富的軟體生態;
可相對地,只有使用者數達到一定規模的成熟的平臺才會吸引開發者來,為它開發足夠豐富的程式。
鴻蒙當時的開局沒有我們想象中的那麼艱難,一個是因為華為本身就有著數千萬的存量使用者,使得鴻蒙手機版釋出的第一週就有了 3000 萬的使用者打底。
另外一個就是因為它雖然表面上換了個作業系統,可它底層針對的處理器的目標架構沒有變,依舊和以前安卓時代一樣,是 ARM 架構的處理器。
這就相當於說雖然換了個說話的方式、換了個口音,但是根本的語系是沒有變的,所以它依舊可以很方便地移植、複用安卓的環境,相容安卓的應用,坐享安卓這麼多年的數以百萬計的 App 成果,然後再慢慢吸引開發者開發專屬於鴻蒙系統的應用,完成生態的過渡。
但是龍芯不行,因為它在根兒上說的語言就和國際通行的 x86 語言不一樣,不會有任何一款程式、任何一個作業系統去原生地支援它。
而龍芯在消費市場的佔有率又無限接近於 0,導致商業開發者耕耘龍芯平臺的意願也無限趨近於 0 ……
現在的龍芯,有產品,有不算太拉跨的效能,但就是沒有主流的軟體生態,雖然社群裡有用愛發電的愛好者,有信創行業的兄弟公司,但是他們的作用對於推廣龍芯都太侷限了。
所以這 20 年來,龍芯的命運和其他一些個不怎麼出名的微處理器廠商一樣,一直存活在超市裡面的收銀機、街道上的訊號控制燈、停車場裡的計費終端、以及小區門口的門禁系統之中……
龍芯,這麼個曾經被寄以希望打破外國市場壟斷的產品,被困在了無數個鐵盒子之中。
作為一款國產自研的處理器,龍芯,很棒;可與此同時,後發所致的劣勢,生態上的極度不完善,也導致龍芯離我們億萬普通人的距離,也還很遠 —— 但是,二進位制轉譯技術,讓龍芯看到了希望。
2017 年,微軟聯合高通釋出了一款使用驍龍 835 處理器的便攜筆記本概念機,為了能夠讓以往 Windows 上海量的 x86 程式順利在高通的 ARM 指令集架構處理器上執行,微軟聯合高通研製了一個 “ 轉譯器 ”,能夠實時地將程式的 x86 指令轉譯成 ARM 指令在處理器上執行,而不需要程式本身做出任何改動。
在這個技術的幫助下,一臺使用高通 ARM 處理器的膝上型電腦成功執行起了桌面 x86 版本的 Adobe Photoshop 軟體。
之後,蘋果把這個創意給發揚了光大 —— 今年釋出的 Mac 線電腦,處理器全都從 x86 架構的英特爾換成了蘋果自研的 M1 ARM 處理器,為了解決程式生態的問題,蘋果也做了一個名叫 Rosetta 2 的指令翻譯器,實現了對傳統 x86 架構程式的支援。
從目前大家對 M1 MacBook 的反饋來看,
蘋果的這個技術實踐顯然是成功了。
所以就在今年早些時候,龍芯也公佈了自家的指令轉譯器專案,按照龍芯的說法,未來 LoongArch 架構的處理器可以以不低於 70% 的效率轉譯原本為 Windows 平臺開發的 x86 程式,以不低於 90% 的效率轉譯原本為 Android 平臺開發的 ARM 程式。
假如一切順利的話,
龍芯會在五年的時間內解決跨平臺的程式執行與指令轉譯問題,到時候龍芯也可以像現在的鴻蒙一樣,享受到跨平臺的生態紅利,進而吸引使用者,從而創造出屬於自己的生態
。
這一步,也許是對於目前的龍芯來說最難的一步。
可但凡這事要是能搞成,龍芯也將終於能打破指令集不同的緊箍咒,堂堂正正地擁有了和英特爾、 AMD 這兩個老大哥在消費級市場上掰手腕的能力。
好了小夥伴們,我不叫託尼老師我是米羅,一個深挖科技硬體網際網路的自媒體人,假如你對龍芯有什麼想法或者看法,歡迎在評論區與大家討論。
喜歡我的影片,也不要忘記一鍵三連,本期影片到這裡就結束了,龍芯的未來如何,就讓我們一起期待吧。
撰文
:米羅
影片製作
:我不叫託尼老師
美編
:煥妍
圖片、資料來源:
知乎 - 史上最全龍芯處理器家譜
cnBate - 龍芯詳解 LoongArch 指令集:通吃MIPS/ARM/x86
ifanr - 驍龍 835 終於裝進了 Windows 電腦,續航創下了歷史之最
Behind this Door - Tour Two Intel Assembly Test Technology
Development Factories
IT之家 - 繼 x86、ARM64 之後,龍芯自主架構中斷模型成為 ACPI 國際標準
維基百科 - 英特爾管理引擎
維基百科 - LoongISA
MIPS - Nationz Technologies Licenses MIPS Technologies‘
Processor Cores for Mobile Payment Solutions
apple支援 - 如果需要在 Mac 上安裝 Rosetta