针对嵌入式处理器优化 Lua?

我正在将 Lua 嵌入到一个 16MHz 32 位 ARM7TDMI 处理器和 256Kb RAM(是的,那是 GBA)的 programm 中。目前它运行得非常完美(感谢 StackOveflow 用户们回答我的问题),执行简单的任务,但我可以做哪些优化来提高整体效率呢?以下是我的一些想法:

  • 目前我将我的 Lua 代码存储为常量 char 数组(有单独的 ROM 高达 32Mb,因此可以帮助释放 RAM)。当我想运行它时,我只需将此字符串推入 Lua 栈中并“pcall”它。但据我所知,Lua 会将该代码构建为 RAM 中的字节码。我认为这可能会导致大型 Lua 文件存在一些问题。有没有预编译该字节码并将其保存到常量容器中的方法?

  • THUMB 还是 ARM 更适合运行 Lua 的 asm 命令集?

编辑:也许,将原始的 Lua 更改为 LuaJIT?据我所知,LuaJIT 有许多汇编代码行(这使其不太可移植),是否有机会对旧的 ARM7 处理器进行成功的构建?

点赞