Project

General

Profile

Actions

Bug #21164

closed

Performance Regression using --jit

Added by purbug28 (puni ru) about 1 month ago. Updated about 1 month ago.

Status:
Feedback
Assignee:
-
Target version:
-
ruby -v:
ruby 3.4.2 (2025-02-15 revision d2930f8e7a) +PRISM [x86_64-linux]
[ruby-core:121207]

Description

Ruby 3.4.2 --jit runs slower than no JIT, while Ruby 3.3.7 --jit runs faster.

# frozen_string_literal: true
n = 200000
c = Array.new(n + 1, 0)
(1..n).each do |i|
  a = []
  m = 100
  (1..m).each do
    a << i
    c[i] += 1
    a << i / m
    c[i % m] += 1
  end
end
puts c.sum

results of /usr/bin/time
ruby 3.4.2
--jit : 1.98user 0.03system 0:02.02elapsed 99%CPU (0avgtext+0avgdata 19692maxresident)k
no JIT: 1.77user 0.02system 0:01.80elapsed 99%CPU (0avgtext+0avgdata 18916maxresident)k
ruby 3.3.7
--jit : 1.20user 0.05system 0:01.26elapsed 99%CPU (0avgtext+0avgdata 23220maxresident)k
no JIT: 1.81user 0.02system 0:01.83elapsed 99%CPU (0avgtext+0avgdata 22952maxresident)k

ruby -v --jit

ruby 3.4.2 (2025-02-15 revision d2930f8e7a) +YJIT +PRISM [x86_64-linux]
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0