avalon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Berin Loritsch <blorit...@apache.org>
Subject Re: Memory leak
Date Thu, 21 Feb 2002 14:05:58 GMT
Leif Mortenson wrote:
> Still working on the memoryu, but here are the results of running the 
> ContainerProfile
> test before and after the patch was added.
> Before:
> ---
> INFO    10142   [test    ] ():      ExcaliburComponentManager time = 
> 259493ms. to use 50000 calls on 3 components.
 > ---
> After
> ---
> INFO    10142   [test    ] ():      ExcaliburComponentManager time = 
> 213668ms. to use 50000 calls on 3 components.
 > ---

Keep in mind that this is within the margin of error so to speak.  It
all depends on the timing of the threads.  Most time is spent in the 
java.lang.Thread.yield() method which is acceptible.  I have seen the
ECM take anywhere between 193 seconds to ~300 seconds.  It is a bear
to run this test again and again, but the only way to test trends and
really determine if you are making headway is to run it multiple times.

> While startup time slowed down a bit, usage time got slightly better. 

This is still within the margin of error.

> The new ContainerManager
> is a big improvement in speed though.  (kudos)

Thanks.  The big difference between the two is that the ContainerManager
moves management off the critical path and handles it asynchronously. 
The ECM handles all management tasks in the critical path (aka 
synchronously).  As a result, each lookup() is doing alot more work than
the ContainerManager.

> You might want to try running a modified version of the 
> ExcaliburComponentManagerTestCase
> on it and see how it handles the dispose order problems that the patch 
> fixed.

That is something for the ECM testing.  The ContainerProfile test is
strictly to compare how the systems stack up to each other objectively.

> I was able to reproduce memory leak.  Still looking into how to fix it.

I have a bunch of hprof text dumps, if you want me to send them to you
off line, I would be happy to.  It is the results of running the 
ContainerProfile testcase with the -Xrunhprof:.... option set (the 
reason for the new test.sh class).


"They that give up essential liberty to obtain a little temporary safety
  deserve neither liberty nor safety."
                 - Benjamin Franklin

To unsubscribe, e-mail:   <mailto:avalon-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:avalon-dev-help@jakarta.apache.org>

View raw message