[parrot/parrot] b5cc08: [gc] Add dynamic threshold to GC MS2

noreply at github.com noreply at github.com
Sun Nov 28 21:49:24 UTC 2010

Branch: refs/heads/nwellnhof/gc_dynamic_threshold
Home:   https://github.com/parrot/parrot

Commit: b5cc088bbcb68626dc7dcac6930642183790e760
Author: Nick Wellnhofer <wellnhofer at aevum.de>
Date:   2010-11-28 (Sun, 28 Nov 2010)

Changed paths:
  M include/parrot/gc_api.h
  M src/gc/fixed_allocator.c
  M src/gc/fixed_allocator.h
  M src/gc/gc_ms.c
  M src/gc/gc_ms2.c
  M src/gc/gc_private.h
  M src/gc/mark_sweep.c
  M src/gc/string_gc.c
  M t/op/gc-leaky-box.t
  M t/op/gc-leaky-call.t

Log Message:
[gc] Add dynamic threshold to GC MS2

memory_used now also accounts for attribute and other fixed size storage
and ignores constant objects. The old code could lead to a lot more
memory being used than accounted for, so rather low thresholds could
still work very well. To address this, the default dynamic GC threshold
has been increased to 75%. Note that these changes have not been applied
to the old GC. It still uses the old accounting.

Also cleanup string compacting code.

More information about the parrot-commits mailing list