RISC-V SIG 預期隨主線發布的 openEuler 23.09 創新版本會集成 LuaJIT RISC-V 支持。本次發版將提供帶有完整 LuaJIT 支持的 RISC-V 環境并帶有相關軟件如 openResty 等軟件的支持。
隨著 RISC-V SIG 主線推動工作的進展,LuaJIT 和相關軟件在 RISC-V 架構下的支持也被合入到 openEuler 主線代碼中。這標志著,openEuler 將成為首個在主線分支為 LuaJIT 提供 RISC-V 架構支持的主流發行版。
LuaJIT 的優勢與特點
LuaJIT 是一個高效的 Lua5.1 實現,有高效的解釋器與優雅的即時編譯引擎,擁有相較原版 Lua5.1 平均數倍的性能,不僅如此,它也有諸如 FFI、Bitop 擴展和部分 Lua 高版本的特性。基于以上原因,LuaJIT 被廣泛使用,成為了事實上的 Lua5.1/5.2 運行時。
LuaJIT RISC-V 項目背景
LuaJIT RISC-V(簡稱 LJRV)是將 LuaJIT 移植到 64 位 RISC-V 平臺上的項目,旨在為 RISC-V 平臺提供一個高效的 Lua 運行時,讓依賴 LuaJIT 的項目在 RISC-V 平臺上也能無障礙運行。此前,相關工作在國內外各個開源發行版平臺仍然屬于技術空白。
技術挑戰與工作進展
由于 LuaJIT 的核心部分使用匯編編寫,移植到不同指令集平臺中的復雜性很大。尤其是 LuaJIT 的 JIT 部分不依賴于如 LLVM 的通用編譯框架,此前僅在 x86、ARM 等平臺完成移植,而 RISC-V 指令集的移植工作尚未開始,大量依賴 LuaJIT 的軟件包在 RISC-V 架構的各個發行版上或無法運行,或只能使用低速的原版 Lua5.1。
目前,中科院軟件所成功移植了 LuaJIT 的大部分功能,包括 DynASM 動態匯編器,解釋器運行時和 RISC-V 后端,現已通過 PUC Lua5.1 回歸測試與 LuaJIT 回歸測試。同時,可以在 RISC-V 64 平臺上運行依賴 LuaJIT 的程序有 Sysbench,Neovim,OpenResty,L?VE 等。已知存在的問題是 Unwinding 功能尚未充分移植,JIT 可能會出現一些未知的 bug。待相關工作完成與修復后,工程會進一步合入上游。
另外在 openEuler 主線上,一些依賴 luajit 的包,都是深度集成形式的,如 openResty,wrk 等,移植工作需要進行進一步適配。
合入 openEuler 主線
基于 LuaJIT 的移植成果,RISC-V SIG 打包了相關 patch 并且合入了 openEuler 的 LuaJIT master 分支。這意味著從即將發布的 openEuler 23.09 創新版本開始,openEuler 將原生支持 RISC-V 平臺的 LuaJIT 以及相關生態軟件包,這將是首個在主線分支為 LuaJIT 提供 RISC-V 架構支持的主流發行版。
同時,在 LuaJIT 開發工作的基礎上,RISC-V SIG 也為 openResty 等 LuaJIT 強依賴的軟件包提供了相應的支持,目前已合入主線。下圖是依賴 LuaJIT 的開源游戲 Minetest 的運行演示圖,基于的環境是 openEuler RISC-V 平臺和 Unmatched 開發板。根據用戶測試反饋,游戲畫面流暢,操作延遲低。
性能對比及結果展示
我們在 VisionFive 2 和 LicheePi 4A 上分別使用 PUC Lua5.1、LJRV 關閉 JIT、LJRV 開啟 JIT,運行了 Lua-Benchmarks。在 TH1520 和 JH7110 環境的結果如下:
聯系我們
如果您對 RISC-V 感興趣,歡迎加入 RISC-V SIG 交流群,討論更多關于 RISC-V 的更多內容,為推動 openEuler & RISC-V 生態貢獻力量
關于作者
楊延玲,中科院軟件所 PLCT 實驗室實習生,歐拉開源社區 RISC-V SIG 成員,目前在溫州大學讀研二,負責協助 RISC-V SIG 和 ROS SIG 的日常運營。
審核編輯:湯梓紅
-
移植
+關注
關注
1文章
391瀏覽量
28478 -
代碼
+關注
關注
30文章
4872瀏覽量
69913 -
RISC-V
+關注
關注
46文章
2442瀏覽量
47854 -
openEuler
+關注
關注
2文章
324瀏覽量
6161
原文標題:獨家首發!openEuler 主線集成 LuaJIT RISC-V JIT 技術
文章出處:【微信號:openEulercommunity,微信公眾號:openEuler】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
淺析RISC-V領先ARM的優勢
rIsc-v的缺的是什么?
RISC-V有哪些特點
談一談RISC-V架構的優勢和特點
RISC-V規范的演進 RISC-V何時爆發?
關于RISC-V 5大潛力和優勢
【直播預告】OpenHarmony“芯”進展,RISC-V專場
RISC-V生態強勁 RISC-V International會員超4000 超75個技術工作組
解鎖RISC-V技術力量丨曹英杰:RISC-V與大模型探索

直播預約 |開源芯片系列講座第25期:RISC-V架構在高性能領域的進展與挑戰

圣誕特輯 |開源芯片系列講座第25期:RISC-V架構在高性能領域的進展與挑戰

評論