It actually attempts to do that.  I spent a fair amount of time this
weekend debugging that code since I suspected there was something
preventing the mergers from happening.  However, it turns out in
practice, to be a fairly rare event where requests end up being
adjacent to each other.  On Windows, I suspect there's a minimum
granular size to the request needed to make that happen.  On Linux, I
think malloc has a header on each allocated block, so it never seems
to occur.  One thought would be to try to release all segments that
might be empty in the hopes that the OS might be able to merge them
into a larger block.  This, however, will require significantly more
rework to the garbage collector than I'm willing to do right before a
release.

Rick

On Mon, Mar 30, 2009 at 8:04 AM, Mike Cowlishaw <m...@uk.ibm.com> wrote:
>> The results were somewhat surprising.  First of all, the performance
>> was noticeably worse.  The interpreter was essentially in a continuous
>> state of garbage collection.  AND, on top of that, it ran out of
>> memory at 4.75Mb rather than 7.5Mb.  I tried this using multipliers of
>> 2x, 3x, 4x.  The bigger the multiplier, the worse the performance when
>> things crossed the tipping point.  All of these end of giving out of
>> memory in the same area.
>
> Well, thanks for trying!
>
> Wonders .. could the heap conglomerate adjacent pieces of storage as
> they're released (I have no idea of the internals of ooRexx)?
>
> Mike
>
>
>
>
>
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with number
> 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
>
>
>
>
>
>
>
> ------------------------------------------------------------------------------
> _______________________________________________
> Oorexx-devel mailing list
> Oorexx-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/oorexx-devel
>

------------------------------------------------------------------------------
_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to