From: "jeremyevans0 (Jeremy Evans) via ruby-core" <ruby-core@...> Date: 2023-08-25T17:35:19+00:00 Subject: [ruby-core:114554] [Ruby master Bug#18454] YJIT slowing down key Discourse benchmarks Issue #18454 has been updated by jeremyevans0 (Jeremy Evans). Status changed from Open to Closed YJIT in Ruby 3.2 was significantly improved from Ruby 3.1, and has further been improved. If YJIT in current Ruby master is still resulting in a slowdown for Discourse, please post an update. ---------------------------------------- Bug #18454: YJIT slowing down key Discourse benchmarks https://bugs.ruby-lang.org/issues/18454#change-104361 * Author: sam.saffron (Sam Saffron) * Status: Closed * Priority: Normal * ruby -v: 3.1.0p0 * Backport: 2.6: UNKNOWN, 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN ---------------------------------------- 4 out of 6 key Discourse benchmarks used in: https://github.com/discourse/discourse/blob/main/script/bench.rb are slower under YJIT. Vanilla (median) -> YJIT (median) Categories: 47ms -> 51 Home page: 85 -> 86 Topic: 42 -> 38 Categories Admin: 48 -> 50 Home Admin: 83 -> 84 Topic Admin: 43 -> 39 Boot: 1740ms -> 2484ms RSS: 358756 -> 640540 This was run with a simple `RUBYOPT='--enable-yjit' ruby script/bench.rb -i 100 -s` To get Discourse working with Ruby 3.1 you will need: ``` diff --git a/Gemfile b/Gemfile index 9cdfbf21a9..403c428718 100644 --- a/Gemfile +++ b/Gemfile @@ -263,3 +263,11 @@ gem 'colored2', require: false gem 'maxminddb' gem 'rails_failover', require: false + +if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new("3.0.0") + gem 'net-pop', require: false + gem 'net-smtp', require: false + gem 'net-imap', require: false + # waiting on new version of i18n gem + gem 'psych', '3.3.2' +end ``` It is clear that memory usage and boot time have to take a hit here, but slowing down home page seems concerning. Any ideas on what we should test here and how to narrow this down? -- https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- ruby-core@ml.ruby-lang.org To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org ruby-core info -- https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-core.ml.ruby-lang.org/