您的位置:首页 > IT > 正文

世界快看:Ruby 引入新 JIT 编译器 RJIT,替代 MJIT

来源:OSCHINA     时间:2023-03-10 08:12:22


(资料图片)

Ruby 代码仓库近期新增了一个关于合并RJIT 的 PR。

据介绍,RJIT 是新的 JIT 编译器,用作 MJIT 的替代实现。主要特性如下:

RJIT 使用纯 Ruby 汇编程序生成原生代码 MJIT 在运行时需要 C 编译器,YJIT 在构建时需要 Rust 编译器。RJIT 不需要它们 这意味着 RJIT 的预热可能比 YJIT 慢,但仍然比 MJIT 快得多 RJIT 生成的代码看起来与 YJIT 非常相似 事实上,很多方法都是将 Rust 代码直接翻译成 Ruby 因此能够通过删除特定于 MJIT 的实现来简化 Ruby VM 如果需要,还可以在 RJIT 中为 YJIT 做一些早期实验

关于 RJIT 的更多信息,查看[Feature #19420]

部分性能基准测试如下:

Headlining Benchmarks

MicroBenchmarks

其他基准测试

相关文章