At 7:01 PM -0700 5/22/02, Sean O'Rourke wrote:
>I took a look at what was going on, and found that the GC probably needs a
>good tuning.  For the 20K file, parrot is doing 217 collections of the
>string pool, the last 102 of which reclaim less than 10% of the pool.
>Changing compact_string_pool() to increase the pool size by a factor of
>(0.5 - pct_freed_last_time) if it reclaimed less than 50% of memory
>reduced this to 21 collections, much fewer of which reclaimed abysmally
>small amounts of memory.

Interesting. Could you work with Peter Gibbs and see what the two of 
you can do to come up with an adaptive collection system? That's the 
best way to go in the long term--the current system's functionally 
complete, but far from well tuned.

>This is a total quick hack -- I'm fairly sure I'm doing it in the wrong
>place, and it's no replacement for real generational collection.
>However, it does improve performance by something like a factor of 4.
>Could someone point me to somewhere I could find out more about the
>performance-relevant aspects of the GC design?

Our GC design? It's a straightforward compacting collector, nothing 
at all fancy outside the potential for multiple FromSpaces.

>  Are there plans to make it
>generational in the future?  The PDD seems to deal mostly with safety
>issues.

There's nothing in the design of the system to prevent it, I hope (if 
there is, then this'd be a good time to point out the flaws so we can 
see about fixing them), but neither are there anything other than 
nebulous "at some point" plans for it.
-- 
                                         Dan

--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
[EMAIL PROTECTED]                         have teddy bears and even
                                       teddy bears get drunk

Reply via email to