【发布时间】:2013-10-19 16:18:24
【问题描述】:
由于 luajit 或其他地方的 jit 编译器需要相当多的内存(对于嵌入式系统),我想知道:
有没有办法在内存充足的系统上运行 luajit(或其他基于 jit 的 VM),而不是冻结代码并在没有 jit 的情况下重用程序?
【问题讨论】:
-
部分内存开销是冗余代码以及在编译代码失效时中止执行编译代码所需的信息。您无法真正避免这种情况,因为 JIT 编译的代码在运行时可能违反的某些假设下仍然是专门的,无论它是编译的 JIT 还是 AOT。另外,在任何情况下,您都需要完整的字节码和解释器,虽然按照桌面标准,它们很小,但对于某些嵌入式平台来说并不是花生。
标签: compiler-construction lua jit luajit