聲明:本文來自于微信公眾號量子位 | 公眾號 QbitAI,作者:明敏 克雷西,授權站長之家轉載發(fā)布。
為啥性能最好的開源CPU是中國的?
就這兩天,海外大V的一條發(fā)問,在國外科技圈引發(fā)廣泛熱議。
這條信息兩天內就吸引了超過50萬次閱讀、點贊量超5k。
Hackernews上也掀起了相關討論。
“香山”處理器的GitHub Star在2天內迎來了一波暴漲。
而這個CPU說的不是別人,正是中科院計算技術所的核心成果,國產自研CPU:香山。
被熱議和討論的還不止CPU本身,也包括背后的項目:一生一芯。
老外感嘆:中國人正在一磚一瓦建設核心工程。
背后自然是認可,所以項目核心負責人,中科院計算所研究院包云崗教授也表達了感慨:
這是對香山項目的一種肯定。
已知性能最強的開源處理器
簡單來說,這次“香山”項目爆火出圈有點意外。
發(fā)布該推特的大V George Hotz是開源自動駕駛公司Comma AI的總裁,日常對芯片硬件領域非常關注。前段時間他給AMD替代CUDA的方案挑出了bug。
他推特中提及的“開源最強”,追溯數(shù)據(jù)可以追溯到2024RISC-V歐洲峰會上,香山最新版本“昆明湖”在SPECint2006測試中,以3GHz的頻率達到了標準化分數(shù)45。
其性能可以媲美ARM Neoverse N2,是目前已知性能最強的開源處理器。
△XiangShan: Empowering Open-Source RISC-V Innovation with High Performance Processor and Agile Infrastructure
具體對比可以參考下圖:
有人表示,盡管很難找到先進版本x86和ARM內核的SPECint2006分數(shù),因為它們都使用PECint2017,最后的時鐘頻率也會有比較大影響;但由于“昆明湖”是在3GHz下,所以表現(xiàn)是相當不錯的。
事情引發(fā)熱議后,中科院計算技術研究所研究員包云崗也在知乎發(fā)表回應。
包云崗表示,香山開源CPU項目已經啟動5年,現(xiàn)在隨著產業(yè)發(fā)展,更加堅定了開源CPU這個信念。
目前,香山項目已經取得了一定進展。
性能上可以媲美ARM Neoverse N2,同時也已集齊了產業(yè)落地的“八大金剛”企業(yè)客戶。
原回答如下:(上下滑動查看所有內容):
透過這一最新回應,香山項目的發(fā)展脈絡也更加清晰地呈現(xiàn)出來。
香山項目的啟動可以追溯到2019年。
包云崗和團隊的唐丹博士一直認為要建立一個像Linux那樣的開源RISC-V核主線,既能被工業(yè)界廣泛應用,又能支持學術界試驗創(chuàng)新想法。
于是在中國科學院支持下,由中國科學院計算技術研究所牽頭發(fā)起了“香山”高性能開源RISC-V處理器項目。
之后團隊做了一年多的準備工作,直到2020年6月,香山處理器的正式開發(fā)工作開始,GitHub代碼倉庫也隨之建立,之后在深圳鵬城實驗室完成了主要的物理設計流程。
據(jù)介紹,流水線前端、后端、訪存流水線、L1Cache、L2/L3Cache 等在內的關鍵代碼均由香山團隊獨立實現(xiàn)。
一年多之后,香山處理器第一版(雁棲湖架構)在2021年7月投片。
雁棲湖架構面向單核場景,支持RV64GC指令集,在28nm的工藝節(jié)點下達到1.3GHz的頻率。
2022年1月,雁棲湖芯片回片并成功點亮,能夠正確運行Linux/Debian等復雜操作系統(tǒng)。
這中間,2021年12月,香山的研發(fā)團隊也進一步發(fā)展壯大,與16家機構聯(lián)合成立了北京開源芯片研究院,進行香山處理器核的產品化改造和后續(xù)架構研發(fā)。
在第一代投片前的兩個月,第二代香山芯片——南湖的設計工作也已經啟動。
南湖V1版本面向雙核場景, 支持RV64GCBK指令集,于2023年11月投片,在14nm工藝節(jié)點下頻率達到2GHz。
南湖V2版本則包含了MBIST等改進設計,于2023年4月投片,同年10月回片并成功點亮啟動Linux。
南湖V3版本將包含更多的微結構、PPA改進,目前項目正在進行中。
2022年8月24日,中科院計算所、北京開源芯片研究院、騰訊、阿里、中興通訊等成立了聯(lián)合研發(fā)團隊,正式開展第三代香山(昆明湖架構)的聯(lián)合開發(fā)。
昆明湖的設計探索,以及南湖的產品化,自此被確立為香山項目接下來的兩項工作重點。
去年8月的第4屆RISC-V中國峰會上,基于南湖的開發(fā)板正式亮相,并成功運行了《云·原神》。
而根據(jù)團隊發(fā)布的雙周報顯示,2023年11月,昆明湖的研發(fā)已經接近尾聲,此表述最后一次在雙周報中出現(xiàn)是在去年4月。
在此之后的雙周報顯示,昆明湖各組正在持續(xù)推進面積、時序、功耗的優(yōu)化。
不過目前,香山處理器還沒有實現(xiàn)量產。
官方表示,香山將保持半年左右的微結構迭代周期、流片周期,除了微結構之外,還希望探索并建立一套高性能處理器的敏捷開發(fā)流程。
官方文檔詳解香山微結構
從技術角度看,香山處理器選用了Chisel硬件描述語言,微架構采用了亂序六發(fā)射結構、訪存子系統(tǒng)分離的設計。
研發(fā)團隊將訪存子系統(tǒng)分離開,包括兩條load流水線,兩條store addr流水線,兩條store data流水線,以及獨立的load隊列和store隊列,store buffer等。
目前南湖微架構的技術文檔已經完整公布,整體結構如下:
具體來說,香山處理器前端流水線包括分支預測單元、取指單元、指令緩沖等單元,順序取指。
南湖架構采取了一種分支預測和指令緩存解耦的取指架構,分支預測單元提供取指請求,寫入一個隊列,該隊列將其發(fā)往取指單元,送入指令緩存。
取出的指令碼通過預譯碼初步檢查分支預測的錯誤并及時沖刷預測流水線,檢查后的指令送入指令緩沖并傳給譯碼模塊,最終形成后端的指令供給。
后端包括譯碼、重命名、重定序緩沖、保留站、整型/浮點寄存器堆、整型/浮點運算單元。
處理器的流水線后端負責指令的重命名與亂序執(zhí)行。
如下圖所示,香山處理器(南湖)后端可以分為CtrlBlock、IntBlock、FloatBlock、Memblock這4個部分。
CtrlBlock負責指令的譯碼、重命名和分派, IntBlock、FloatBlock、MemBlock分別負責整數(shù)、浮點、訪存指令的亂序執(zhí)行。
(在第三代香山處理器即昆明湖的后端還新增了VectorBlockworlds,負責向量的處理)
香山處理器的MemBlock包含核內的訪存流水線及隊列,以及與訪存流水線緊耦合的一級數(shù)據(jù)緩存。
其中包含兩條load流水線,彼此分離的兩條sta流水線和兩條std流水線,load和store流水線分別負責維護訪存指令的順序信息。
最新的昆明湖架構還沒有詳細的技術文檔,但團隊已經公布了整體的架構圖。
可以看出其結構整體上與南湖相似,但后端的各個Block中的具體實現(xiàn)也有不少變化,還增加了一個處理向量的Block,另外部分環(huán)節(jié)的緩存容量也有提升。
開源協(xié)議方面,香山采用木蘭寬松許可證第2版,堅持開放全部設計源碼和流程,并歡迎來自社區(qū)的貢獻。
網友:中國正在一磚一瓦建設核心工程能力
“香山”項目意外翻紅,也把海外網友給整焦慮了。
在評論中,還有人非常肯定地表示:這正意味著中國在解決基本硬件問題。
在硅谷還在資助一波硬件初創(chuàng)企業(yè)時,中國正在一磚一瓦建設核心工程能力。
……
難題才是吸引真正人才的關鍵。
有人就說了,美國最好的芯片架構師都在英偉達和蘋果,沒人搞開源。
甚至還有人上升到,如果邏輯和數(shù)學是中國的強項,那這將如何影響計算機的未來呢?
還有人扒到了“一生一芯”計劃:
這里提到的其實是中國科學院大學在2019年啟動的一項計劃。
簡單來說,就是以流片為目標,讓本科生主導完成一款64位RISC-V處理器SoC芯片設計并實現(xiàn)流片,芯片能成功運行Linux操作系統(tǒng)以及學生自己編寫的國科大教學操作系統(tǒng)UCAS-Core。
首批參與計劃的學生只有5人,經歷幾年,規(guī)模已逐漸擴大到6000余人。
這個計劃的核心目標就是在“開源共享”的理念下,突破傳統(tǒng)課程邊界,縮短人才從培養(yǎng)階段到投入科研與產業(yè)一線的周期。
類似的模式可以參考上世紀在MIT風靡一時的Mead-Conway式培訓,它也是主打讓學生全流程設計制造芯片。后來,很多學生就拿著自己的課程設計奔赴硅谷創(chuàng)業(yè)。
總之,在2025的開年,國產開源開始頻繁刷屏。
在討論“香山”之余,就有人表示:
別忘了還有DeepSeek。
中國似乎在做越來越多開源工作。
參考鏈接:
[1]https://x.com/realGeorgeHotz/status/1874842750967005566
[2]https://news.ycombinator.com/item?id=42576242
[3]https://riscv-europe.org/summit/2024/media/proceedings/posters/51_poster.pdf
[4]https://docs.xiangshan.cc/zh-cn/latest/backend/overview/
— 完 —
(舉報)