Ruby 3.1 Released With Speedy, Experimental In-Process JIT Compiler
Ruby 3.1 is out this Christmas day as a big feature release for this programming language while retaining compatibility with Ruby 3.0.
Most exciting with Ruby 3.1 is "YJIT" as a new, experimental in-process just-in-time (JIT) Compiler. Ruby 3.1's new JIT compiler was developed by Shopify for improving the performance of their Ruby on Rails application. YJIT should be very beneficial in improving Rails real-world application performance.
Unlike Ruby's existing MJIT compiler that uses an external C compiler, YJIT makes use of basic block versioning and has a JIT compiler inside. YJIT has a fast warmup time and performance improvements for Railsbench up to 22% and up to 39% for the liquid-render test. YJIT is still considered experimental in Ruby 3.1 and not enabled by default.
Ruby 3.1 also features a rewritten debugger, IRB auto-complete support, some minor language refinements, experimental IDE support for the TypeProf static type analyzer, and some performance improvements to the existing MJIT compiler.
More details on Ruby 3.1 at Ruby-Lang.org.
Most exciting with Ruby 3.1 is "YJIT" as a new, experimental in-process just-in-time (JIT) Compiler. Ruby 3.1's new JIT compiler was developed by Shopify for improving the performance of their Ruby on Rails application. YJIT should be very beneficial in improving Rails real-world application performance.
Unlike Ruby's existing MJIT compiler that uses an external C compiler, YJIT makes use of basic block versioning and has a JIT compiler inside. YJIT has a fast warmup time and performance improvements for Railsbench up to 22% and up to 39% for the liquid-render test. YJIT is still considered experimental in Ruby 3.1 and not enabled by default.
Ruby 3.1 also features a rewritten debugger, IRB auto-complete support, some minor language refinements, experimental IDE support for the TypeProf static type analyzer, and some performance improvements to the existing MJIT compiler.
More details on Ruby 3.1 at Ruby-Lang.org.
6 Comments