[ruby-cvs:55563] ko1:r48413 (trunk): * gc.c: Tuning RincGC parameters.

ko1 at ruby-lang.org ko1 at ruby-lang.org
Fri Nov 14 05:17:01 JST 2014

ko1	2014-11-14 05:16:59 +0900 (Fri, 14 Nov 2014)

  New Revision: 48413


    * gc.c: Tuning RincGC parameters.
      Before this patch, gc_marks_step() marks (white -> grey) fixed
      number objects. However, this strategy does not fit practical
      cases, for example too slow to make progres.
      This patch changes this strategy how many objects the
      gc_marks_step() should handle.
      We can estimate how many times gc_marks_step() is called during
      this major marking (== C) with the free slot number in pooled
      pages. We also can estimate the living object number (== L)
      using last marked_slots value. We can solve this problem (how
      many objects should be process in gc_marks_step()) by L/C.
    * gc.c (rb_objspace_t): add rb_objspace_t::rincgc::pooled_sltos and

  Modified files:

More information about the ruby-cvs mailing list