Actions
Bug #20634
closedruby uses 1/2 (7 out of 16) cores for 16 ractors with RUBY_MAX_CPU=16 environment variable set
Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 3.3.1 (2024-04-23 revision c56cd86388) [x86_64-linux]
Description
It's a cont for #20618, feel free to close this one and reopen the original bug.
According to top
, the below code uses 7/16 cores (700%) of my AMD Ryzen 7 5800HS:
#!/usr/bin/env ruby
16.times {
Ractor.new {
10_000.downto(1) { |i|
100_000.downto(1) { |j|
i * j
}
}
}
}
sleep 30
Command I ran was RUBY_MAX_CPU=16 ruby test.rb
. Adding RUBY_MN_THREADS=1
increases CPU usage to 8 cores, possibly due to N:M for the main Ractor.
The same code occupies all 16 cores on ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-linux]
The problem reproduces on ruby 3.3.3 (2024-06-12 revision f1c7b6f435) [x86_64-linux] (ruby from the latest docker image).
Updated by skorobogatydmitry (Dmitry Skorobogaty) 5 months ago
- Description updated (diff)
Updated by skorobogatydmitry (Dmitry Skorobogaty) 5 months ago
- Description updated (diff)
Updated by skorobogatydmitry (Dmitry Skorobogaty) 4 months ago
I just checked - the problem doesn't repro-es on HEAD (ruby 3.4.0dev (2024-08-09T03:16:23Z master f57167d338) [x86_64-linux])
Could you close it ?
Updated by byroot (Jean Boussier) 4 months ago
- Status changed from Open to Closed
Actions
Like0
Like0Like0Like0Like0