15. deoptimization branch by
Shyohei Urabe
•contains first naive implementation of JIT
•used very few of JIT optimizations, but
uses less memory than full-power JIT
implementation
•submitted at 26 Aug 2016
Reference URL: https://github.com/ruby/ruby/pull/1419
16. deoptimization branch by
Shyohei Urabe
•contains first naive implementation of JIT
•used very few of JIT optimizations, but
uses less memory than full-power JIT
implementation
•submitted at 26 Aug 2016
•not merged (and will not be)
Reference URL: https://github.com/ruby/ruby/pull/1419
19. MJIT by Vladimir Makarov
Converted YARV to register-based instead of stack-based
(smaller instructions but larger memory footprint).
Built JIT on top of new VM implementation. MJIT can reach
230% performance of Ruby 2.0.0 but is pretty unstable.
22. MJIT-JARV
by Takashi Kokubun
Based on Vladimir Makarov’s work, but without changing
Ruby VM to register-based. Several JIT optimizations were
turned off. These reverted changes made JIT slower but more
stable.
Reference PR: https://github.com/ruby/ruby/pull/1782
Reference ticket: https://bugs.ruby-lang.org/issues/14235
Partially merged in trunk
Able to run Rails stably.