RISC-V 的發展之路:為何軟件一致性正變得至關重要
為了探討該技術對嵌入式與物聯網系統日益凸顯的重要性,我們專訪了馬科斯?科達斯。他現任 GDevelop 公司合作與教育總監,該公司打造了一款開源、無代碼的人工智能游戲引擎。科達斯將分享為矽速科技 SiFive HiFive Premier P550 RISC-V 開發板打造中心化游戲應用商店的實踐,并通過實例闡釋軟件碎片化問題對平臺落地普及的影響。
亞歷山大?諾伊曼:你將在這場 RISC-V 會議中提出,軟件碎片化是開發者即便向往 RISC-V 的架構自由,卻仍頻頻回歸 ARM 平臺的主因。當前 RISC-V 桌面端面臨的具體碎片化問題中,哪些最為常見?
馬科斯?科達斯:從硬件層面來看,面向桌面、服務器和通用消費級產品的 RISC-V 技術正快速發展,但軟件層面的諸多問題,讓桌面端難以將任意一款 RISC-V 開發板作為中長期開發平臺。
首先,RISC-V 桌面端基本未實現主線內核的統一適配。多數開發板廠商都會推出自研內核,而這些內核往往在發布初期就缺乏基礎的驅動支持,在功能、安全等影響用戶態使用體驗的關鍵維度,有時還會落后 Linux 主線內核數年。即便到了用戶態層面,即便部分開發板的硬件本身支持應用二進制文件共享,其軟件倉庫仍處于碎片化狀態。
以 Ubuntu 和 Debian 為例,Ubuntu 本可兼容運行 Debian 的二進制文件,而 Debian 軟件倉庫中擁有大量 Ubuntu 倉庫無法訪問的應用程序。這就導致預裝 Ubuntu 系統的 RISC-V 開發板用戶陷入一種困境:部分應用本可在其硬件上運行,卻無法實現開箱即用。
即便是 ARM 平臺,這種軟件分割的現象也遠沒有這么突出,用戶通常能更便捷地獲取兼容的二進制文件。這降低了 ARM 平臺的使用門檻,也吸引開發者持續深耕這個更成熟的生態 —— 事實上,若 RISC-V 用戶能更便捷地訪問適配的軟件倉庫,其軟件豐富度完全可以與 ARM 匹敵。
亞歷山大?諾伊曼:你將消除部署復雜性定義為 “戰略剛需”。該效果該如何量化?比如,是縮短的環境搭建時間,還是降低的錯誤發生率?
馬科斯?科達斯:在我看來,這一切都始于軟件的可獲取性。如果通過簡化部署和訪問方式,能讓 Ubuntu RISC-V 用戶的便捷可用應用從 100 款增至 1000 款,將徹底改變新開發者選擇該平臺的門檻公式,而搭建時間縮短、錯誤發生率降低也會隨之體現。當用戶或開發者知道,自己能開箱即用地獲取充分利用硬件所需的工具時,他們才更有可能為這個生態投入精力。
全球的開發者數量有限,其可投入的時間也有限。讓 RISC-V 成為一個開發者能順暢開發的生態,而非需要費力去適配的生態,這一點至關重要。
將開發的前置條件從 “開始工作前,我得先想辦法自行編譯二進制文件,或四處尋找兼容的版本”,轉變為 “我只需安裝完成工作所需的工具即可”,這一改變也能帶來可量化的結果:平臺普及率提升、開發者粘性增強、桌面級硬件銷量增長,以及更多連鎖正面效應。
亞歷山大?諾伊曼:你打造的這套工具鏈 / 應用商店模式,能徹底解決哪些典型的環境搭建錯誤或軟硬件不兼容問題?
馬科斯?科達斯:由于應用商店的所有內容都經過人工審核篩選,用戶能確定自己選擇安裝的任何應用都可正常運行。該商店專門針對兩種場景解決問題:
第一種,兼容的二進制文件存在于用戶無法訪問的軟件倉庫中。比如 Ubuntu 用戶需要的 Debian 二進制文件,這套工具能直接從 Debian 倉庫中安裝對應的適配版本。
第二種,應用程序需要配置特定的硬件標識才能運行,或實現高效運行。針對這種情況,我們會制作專屬的構建腳本,讓應用在用戶的硬件上完成編譯,同時自動配置好保障兼容性或性能的硬件標識。
從技術角度來看,實現這些功能并非難事,但從用戶體驗層面,它能將原本可能耗費數小時的、尋找適配二進制文件或軟件倉庫的過程 —— 即便找到,也無法確定能否正常、高效運行 —— 縮短至最多數秒或數分鐘,只需簡單操作就能完成應用的安裝,或編譯出可正常運行的版本。
亞歷山大?諾伊曼:對于只想快速運行二進制文件的開發者而言,他們對使用構建腳本這一方案的接受度如何?
馬科斯?科達斯:使用構建腳本各有優劣,雖然它比直接下載并安裝二進制文件的速度更慢,但優勢在于,開發者能確認代碼是從可信源進行編譯的。
不同開發者會有不同的偏好,但這兩種方式,都遠比花數小時四處尋找兼容的二進制文件、測試不同版本或編譯標識,以及其他一系列繁瑣操作要好 —— 而我們打造的這款應用商店,正是為了讓用戶擺脫這些繁瑣的體驗。
亞歷山大?諾伊曼:一套統一的軟件生態,能在多大程度上消除 RISC-V 普及過程中的最大障礙?
馬科斯?科達斯:這無疑會成為推動 RISC-V對數級增長的關鍵因素:軟件生態的一致性越高,用戶體驗就越好;用戶體驗越好,選擇 RISC-V 而非其他平臺的人就越多;使用人群越多,硬件銷量就越高,這會讓廠商得以加快產品迭代速度,也為未來培養大批 RISC-V 開發者奠定基礎。
但需要注意的是,軟件只是桌面計算生態的一部分,硬件同樣至關重要。對于許多想要嘗試 RISC-V 的開發者而言,其相較于 ARM、甚至 x86-x64 架構在性能和能效上的差距,也是影響選擇的重要因素。
盡管如此,我過去數年在開源軟件公司的工作經歷表明,用戶體驗的提升與平臺普及率之間,存在著明顯的正相關關系。
亞歷山大?諾伊曼:除軟件層面外,你認為未來 2-3 年內,RISC-V 還需要在哪些功能上實現突破,才能與 ARM 展開正面競爭?
馬科斯?科達斯:當前整個半導體行業都面臨芯片短缺和價格上漲的問題,RISC-V 的發展也身處這一困境。但好在這一問題對 ARM、x86-x64 的影響同樣顯著,因此 RISC-V 若能在以下三方面實現突破,仍能獲得發展優勢:
能效提升
原生性能優化
簡化啟動管理,推動 BIOS 或 UEFI 的通用適配
如果 RISC-V 硬件廠商能解決上述至少兩個問題,該技術的發展態勢將遠比現在健康。
其中第三點,RVA23 標準工作組已著手推進解決。因為對于不想使用專有系統鏡像、不愿面對設備過早停產等問題的用戶而言,碎片化始終是核心顧慮。
在我看來,我正打造的這款應用商店,也是對 RVA23 架構中 “二進制文件解碎片化” 理念的延伸。
未來的硬件產品,或許能通過 RVA23 標準在很大程度上解決碎片化問題,但這無法惠及目前市面上已量產的數千款 RISC-V 開發板。這些開發板雖在硬件層面性能出色,適用于各類應用場景,卻可能面臨過早被淘汰的窘境,這并非理想的發展結果。
亞歷山大?諾伊曼:開源社區在維護構建腳本、補丁程序和驅動配置方面,能發揮怎樣的作用?
馬科斯?科達斯:我由衷希望開源社區能在其中扮演核心角色。我手頭的硬件設備有限,雖然會持續為自己現有的設備提供支持,但也希望其他開發板的用戶能從這個項目中受益。
正因如此,我計劃將整個項目進行全開源,而非僅開放構建腳本。這樣一來,開發者就能根據自身需求修改代碼,為自己的開發板添加適配支持,并將成果分享給社區。









評論