diff options
author | Takashi Kokubun <takashikkbn@gmail.com> | 2023-08-25 12:00:15 -0700 |
---|---|---|
committer | Takashi Kokubun <takashikkbn@gmail.com> | 2023-08-25 12:00:54 -0700 |
commit | 4825600da55c8cbd86361b44178670f591cb4099 (patch) | |
tree | 99638e7c257404e2facc65d843baa04061bde752 /NEWS.md | |
parent | 3525c460f9a916f8089cbeca65fc3e893ca5d633 (diff) |
Update NEWS.md for YJIT [ci skip]
Reverse-merge Maxime's release notes changes to NEWS.md and added a
couple of things that are not in release notes.
Diffstat (limited to 'NEWS.md')
-rw-r--r-- | NEWS.md | 18 |
1 files changed, 12 insertions, 6 deletions
@@ -123,23 +123,29 @@ changelog for details of the default gems or bundled gems. ### YJIT -* Significant performance improvements over 3.2 - * Splat and rest arguments support has been improved. +* Major performance improvements over 3.2 + * Support for splat and rest arguments has been improved. * Registers are allocated for stack operations of the virtual machine. * More calls with optional arguments are compiled. - * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, - `Kernel#instance_of?`, `Module#===` are specially optimized. + * Exception handlers are also compiled. * Instance variables no longer exit to the interpreter with megamorphic Object Shapes. + * Unsupported call types no longer exit to the interpreter. + * `Integer#!=`, `String#!=`, `Kernel#block_given?`, `Kernel#is_a?`, + `Kernel#instance_of?`, `Module#===` are specially optimized. + * Now more than 3x faster than the interpreter on optcarrot! * Metadata for compiled code uses a lot less memory. -* Improved code generation on ARM64 +* Generate more compact code on ARM64 * Option to start YJIT in paused mode and then later enable it manually * `--yjit-pause` and `RubyVM::YJIT.resume` * This can be used to enable YJIT only once your application is done booting +* `ratio_in_yjit` stat produced by `--yjit-stats` is now avaiable in release builds, + a special stats or dev build is no longer required. * Exit tracing option now supports sampling * `--trace-exits-sample-rate=N` +* `--yjit-stats=quiet` is added to avoid printing stats on exit. * The default value for `--yjit-exec-mem-size` is changed from 64 to 128. -* Multiple bug fixes +* More thorough testing and multiple bug fixes ### RJIT |