[ruby-cvs:50397] ko1:r43255 (trunk): * gc.c, parse.y: support generational Symbol relatetd marking.

ko1 at ruby-lang.org ko1 at ruby-lang.org
Fri Oct 11 20:45:41 JST 2013


ko1	2013-10-11 20:45:38 +0900 (Fri, 11 Oct 2013)

  New Revision: 43255

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=43255

  Log:
    * gc.c, parse.y: support generational Symbol relatetd marking.
      Each symbols has String objects respectively to represent
      Symbols.
      These objects are marked only when:
    * full marking
    * new symbols are added
      This hack reduce symbols (related strings) marking time.
      For example, on my Linux environment, the following code
      "20_000_000.times{''}"
      with 40k symbols (similar symbol number on Rails 3.2.14 app,
      @jugyo tells me) boosts, from 7.3sec to 4.2sec.

  Modified files:
    trunk/ChangeLog
    trunk/gc.c
    trunk/internal.h
    trunk/parse.y


More information about the ruby-cvs mailing list