[m-dev.] Advice needed on GC related problem

Zoltan Somogyi zs at cs.mu.OZ.AU
Fri Jan 30 17:00:28 AEDT 2004


On 28-Jan-2004, Ralph Becket <rafe at cs.mu.OZ.AU> wrote:
> I've been trying to get stable benchmarking results for version arrays.
> I think my program may be failing due to a GC problem; does anyone have
> any advice on how to go about tracking it down?

I think I found the problem, even without looking at the source code :-)

I happened to look at /var/log/messages on aral, and I found a heap of
messages of the form:

Jan 28 12:38:52 aral kernel: Out of Memory: Killed process 14654 (varray_speed_te).

They were bracketed by rafe's login and logout.

It looks like your test simply keep so much live data around that the gc keeps
expanding the heap, and the kernel kills the process (without the courtesy of
a signal, since aral has the default Linux behavior of allowing overcommit of
virtual memory) when its VM requirements exceed available resources, i.e.
real memory plus swap space.

Of course, the speed test becomes invalid as soon as the test program starts
using swap space, because then you are measuring the interaction of the
program's access pattern with the kernel's page reclamantion algorithm,
not the performance of the algorithm under test.

Zoltan.
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to:       mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions:          mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------



More information about the developers mailing list