[MacRuby] #1303: GC does not actively work with RubySpec after "core/gc".

MacRuby ruby-noreply at macosforge.org
Wed May 25 06:25:11 PDT 2011


#1303: GC does not actively work with RubySpec after "core/gc".
----------------------------------+-----------------------------------------
 Reporter:  watson1978@…          |       Owner:  lsansonetti@…        
     Type:  defect                |      Status:  new                  
 Priority:  critical              |   Milestone:                       
Component:  MacRuby               |    Keywords:                       
----------------------------------+-----------------------------------------
 When I executed the RubySpec, I displayed log of GC.
 {{{
 $ GC_DEBUG=t opts="--verbose" rake spec:rubyspec

 ---- snip ----
 /Users/watson/src/macruby-trunk/spec/frozen/core/float/rationalize_spec.rb
 macruby(25905,0x108281000) malloc: auto malloc[25905]: full GC collected
 9232 objects (595904 bytes) (107281312 bytes in use) 50292 usec (42432 +
 6112 + 453 + 1295 [scan + freeze + finalize + reclaim])
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/float/round_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/float/to_f_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/float/to_i_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/float/to_int_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/float/to_r_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/float/to_s_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/float/truncate_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/float/uminus_spec.rb
 macruby(25905,0x108281000) malloc: auto malloc[25905]: gen. GC collected
 11446 objects (736224 bytes) (107510720 bytes in use) 16803 usec (9232 +
 5393 + 548 + 1630 [scan + freeze + finalize + reclaim])
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/float/uplus_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/float/zero_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/gc/count_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/gc/disable_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/gc/enable_spec.rb
 .
 /Users/watson/src/macruby-
 trunk/spec/frozen/core/gc/garbage_collect_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/gc/profiler/clear_spec.rb
 .
 /Users/watson/src/macruby-
 trunk/spec/frozen/core/gc/profiler/disable_spec.rb
 .
 /Users/watson/src/macruby-
 trunk/spec/frozen/core/gc/profiler/enable_spec.rb
 .
 /Users/watson/src/macruby-
 trunk/spec/frozen/core/gc/profiler/enabled_spec.rb
 .
 /Users/watson/src/macruby-
 trunk/spec/frozen/core/gc/profiler/report_spec.rb
 .
 /Users/watson/src/macruby-
 trunk/spec/frozen/core/gc/profiler/result_spec.rb
 .
 /Users/watson/src/macruby-
 trunk/spec/frozen/core/gc/profiler/total_time_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/gc/start_spec.rb
 .
 /Users/watson/src/macruby-trunk/spec/frozen/core/gc/stress_spec.rb
 .
 ---- snip ----
 }}}

 It seems that the frequency that log of GC is displayed falls. It looks
 like that does not almost work.

 When I executed the RubySpec without "core/gc", the log of GC was
 displayed frequently.

 {{{
 #!diff
 diff --git a/spec/macruby.mspec b/spec/macruby.mspec
 index 0d24aa4..5afa9d0 100644
 --- a/spec/macruby.mspec
 +++ b/spec/macruby.mspec
 @@ -11,6 +11,7 @@ class MSpecScript
    # Core library specs
    set :core, [
      'core',
 +    '^core/gc',

      # obsolete in 1.9
      '^core/continuation',
 }}}

 Before a changing, MacRuby used the memory of 1.12GB. After, used 612MB.

 But, RubySpec crashes frequently by above changing.

-- 
Ticket URL: <http://www.macruby.org/trac/ticket/1303>
MacRuby <http://macruby.org/>



More information about the macruby-tickets mailing list