[Simgrid-user] Excessive Memory Use

Wagner Kolberg wkolberg at inf.ufrgs.br
Fri Jul 22 22:00:06 CEST 2011

Hi guys. We are going to run new tests without the optimization flags
and so forth, as suggested. But first a few questions...

On Fri, Jul 22, 2011 at 4:31 AM, Martin Quinson <martin.quinson at loria.fr> wrote:
> All these callstacks are related to the creation of the processes. The
> second one is where the user process stack is allocated (user
> processes are mapped onto something similar to threads but lighter,
> each of them is allocated a C stack, [1]). The third one is strange,
> but I don't have enough info to help here.

This information was quite helpful... We have something similar to
p2p, with an all-to-all connection. That is, our worker nodes can
exchange data between them. To simulate this behavior, every time a
worker receives some data request, it spawns a new simgrid process to
send the data.

We did some tests, and observed that after these "data-sending"
processes were done, the memory did not decreased. To confirm, we
finished our 32 nodes simulation and kept the master node receiving
heartbeat signals from the workers (that weren't exchanging any more
data) during a while. The memory kept stable on its maximum point, and
only decreased at the end of the simulation.

So finally, the question: does simgrid free these process stacks as
soon as the process function ends (don't know if that's possible), or
only at the end of the simulation? Can/must we destroy these stacks on
our code? Is there a function to do that?

As I said, we are going to run further tests to investigate the problem.
Thank you so much for your help.


More information about the Simgrid-user mailing list