近日,龍芯中科.NET團隊完成了.NET3.1-LoongArch64平臺研發工作,研發的成功標志著圍繞龍芯自主指令系統LoongArch的生態建設成果再進一步。
龍芯自主指令系統LoongArch基于龍芯二十年的CPU研制和生態建設積累,LoongArch從頂層架構,到指令功能和ABI標準等,全部自主設計,不需國外授權。LoongArch吸納了現代指令系統演進的最新成果,運行效率更高,相同的源代碼編譯成LoongArch比編譯成龍芯此前支持的MIPS指令系統,動態執行指令數平均可以減少10%-20%。LoongArch充分考慮兼容生態的需求,融合X86、ARM等國際主流指令系統的主要功能特性,并依托龍芯團隊在二進制翻譯方面十余年的技術積累創新,實現跨指令平臺應用兼容。今年7月,龍芯中科發布龍芯3A5000處理器,該產品是首款采用LoongArch的處理器芯片,性能逼近國際主流水平,這標志著自主研發CPU的性能完全可以超過引進技術的CPU,龍芯中科也開啟了從技術升級邁向全面生態建設。
.NET對LoongArch生態建設意義重大
以C#、F#、VB編程語言為代表的.NET一站式多平臺&多框架的軟件開發生態圈,可廣泛應用于各種生產環境中,其應用范圍包括網頁應用、桌面辦公系統、編程框架、數據庫、區塊鏈、機器學習等。很多應用程序都要求支持C#、F#、VB語言的虛擬機SDK運行環境。尤其最近兩年,其開發模式在快速擴充迭代,已經從.NET Core升級到.NET標準框架,.NET一站式多平臺&多框架的軟件開發生態圈統一平臺已經形成。
此次.NET3.1-LoongArch64平臺研發成功意義重大。隨著龍芯業務的不斷擴展,支撐以C#、F#、VB為代表的.NET應用已經成為實際迫切需求;同時,.NET一站式多平臺&多框架的軟件開發生態圈,對圍繞龍芯平臺構建的軟件生態“第三極”也是不可缺少的平臺。
龍芯.NET團隊為了更好的支持LoongArch64架構特點,對整個后端指令構建系統進行了創新重構設計,同時,也從字節碼加載、JIT語法樹、ABI規范、函數棧幀設計、GC、異常處理等重要模塊,都做了適應LoongArch架構特點的優化,也為后續龍芯后續深度參與社區打好基礎。
在2021年下半年完成社區.NET6-LoongArch64研發后,龍芯團隊會逐步開始從C#語言編譯器、中間字節碼、JIT編譯優化技術、AOT、GC、異常處理等方面,系統的做LoongArch64平臺的深度適配優化,并實踐龍芯的一系列原創技術框架方案。
多個應用場景已落地,未來與開發者緊密合作
目前,針對龍芯架構已經有不少應用場景。下圖是在LoongArch64運行Loongnix的信息。
下圖是在LoongArch64平臺運行github上一個使用ASP.NET Core開發的開源項目FlightFinder,查詢航班信息的截圖。
下圖是完全在龍芯平臺上,使用ASP.NET Core的Blazor前端的ant-design-blazor表格組件,將龍芯平臺運行的測試集結果可視化的展示出來的一個實例程序。后續還會不斷增強功能,并對其內部機制做技術分析,保證在龍芯平臺更好的使用體驗。
未來,龍芯中科將會加快完善.NET-LoongArch產品生態體系,為用戶提供優質的使用體驗。同時,將與.NET領域開發愛好者保持良好互動,虛心收集整理專業開發者們提出的寶貴建議,甚至一些創造性的技術特性設想。
相關文章
「 支持烏有之鄉!」
您的打賞將用于網站日常運行與維護。
幫助我們辦好網站,宣傳紅色文化!
歡迎掃描下方二維碼,訂閱烏有之鄉網刊微信公眾號
