HEX
Server: Apache
System: Linux s198.coreserver.jp 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC 2025 x86_64
User: nagasaki (10062)
PHP: 7.1.33
Disabled: NONE
Upload Files
File: //usr/local/rvm/src/ruby-2.3.8/benchmark/bm_vm1_gc_wb_obj_promoted.rb
class C
  attr_accessor :foo
end
long_lived = C.new

if RUBY_VERSION >= "2.2.0"
  3.times{ GC.start(full_mark: false, immediate_mark: true, lazy_sweep: false) }
elsif
  GC.start
end

i = 0
short_lived = ''
while i<30_000_000 # while loop 1
  long_lived.foo = short_lived # write barrier
  i+=1
end