From: Narihiro Nakamura Date: 2011-07-20T19:09:06+09:00 Subject: [ruby-core:38253] [Ruby 1.9 - Feature #5033] PATCH: 1.9: gc_mark_children: Avoid gc_mark() tail recursion, use goto again. Issue #5033 has been updated by Narihiro Nakamura. Hi, Kurt Stephens wrote: > Minor GC improvement. > > Avoid recurring into gc_mark() when "goto again;" is sufficient. > > -- KAS Nice try! I read your patch. In some program, GC is improved. $ cat r.rb GC::Profiler.enable x = ["s"] 10_000_000.times do x[0] = x.dup end p GC::Profiler.total_time origin: 0.28999999999999976 KAS's patch: 0.22999999999999993 I will accept this patch if GC performance is decrased in other programs. ---------------------------------------- Feature #5033: PATCH: 1.9: gc_mark_children: Avoid gc_mark() tail recursion, use goto again. http://redmine.ruby-lang.org/issues/5033 Author: Kurt Stephens Status: Assigned Priority: Normal Assignee: Narihiro Nakamura Category: core Target version: 1.9.x Minor GC improvement. Avoid recurring into gc_mark() when "goto again;" is sufficient. -- KAS -- http://redmine.ruby-lang.org