Re: Garbage Collection in Circle

From: Patrick Dughi (dughi@IMAXX.NET)
Date: 06/04/98


This is regarding the memory garbage collector that James Turner spoke
about recently. He said that he was going to do some testing, but I don't
think I've heard anything about it since then.
        I did a bit of testing with this library as well, the results
though, were positive.  There is an option to allow one to replace the
free() calls so that they don't do anything, and I started with this
option turned on.

        What I got was a noticable decrease in memory usage (especially
when everyone was idle, or just talking mainly).  However, anytime
anything memory-intensive occured, there was a momentary swell in the
amount of memory used.  Comparing this to the old one shows that it peaks
out at around 5-10% more memory usage for very brief amounts of time, and
then drops slowly to around 3-5% under par.  With the free() calls working
properly, these memory peaks were smaller by about half, and the dips were
pretty much identical.  It does seem to work rather well though,
deliberately not freeing several of the large indexs in the oasis code
causes no noticable change over time in memory usage, whereas without this
code, we see the persistant memory usage (as we should).

        I don't actually have any hard stats on it, though if you'd really
like those, I'm sure I could manage to post those up.

        I'd recommend it, and will post up a bit of information about how
to get it running with your code in a while, since it was a bit of a
hassle to get it to compile and run smoothly.

                                                PjD


     +------------------------------------------------------------+
     | Ensure that you have read the CircleMUD Mailing List FAQ:  |
     | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html |
     +------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/15/00 PST