Hello, thanks for getting back to me.<div><br></div><div>I am not registering any processes, and I should not be close to the limit of how many I can spawn - at least not by the time erlang crashes. if I run top, I can see the memory usage increase slowly until it eventually crashes at ~4Gb. Obviously I am not using the 64-bit implementation, but if I were, physical memory would then be a problem and I might get to a few percent of the data set processed.</div>
<div><br></div><div>As for 'pretty quickly' - a few hours, but by the time <1% of the data set has been processed. It's pretty annoying because otherwise it looks as though everything is running correctly!</div>
<div><br></div><div>Cheers,</div><div><br></div><div>Andrew</div><br><div class="gmail_quote">On Tue, May 26, 2009 at 9:30 PM, Torben Hoffmann <span dir="ltr"><<a href="mailto:torben.lehoff@googlemail.com">torben.lehoff@googlemail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Off the top of my head...<br><br>Are you registering the processes with a unique identifier? <br>If so you will run into a memory leak as those atoms are not garbage collected. <br>
<br>You could also have an issue with the number of processes you spawn - unless you specify +P <number> you are limited to maximum number-I-cannot-remember-right-now processes.<br>
<br>What is "pretty quickly" anyway?<br><br>Cheers,<br>Torben<br><br><div class="gmail_quote"><div><div></div><div class="h5">On Tue, May 26, 2009 at 3:10 PM, andrew mmc <span dir="ltr"><<a href="mailto:andrewmmc@gmail.com" target="_blank">andrewmmc@gmail.com</a>></span> wrote:<br>
</div></div><blockquote class="gmail_quote" style="border-left:1px solid rgb(204, 204, 204);margin:0pt 0pt 0pt 0.8ex;padding-left:1ex"><div><div></div><div class="h5">Hello, all,<div><br></div><div>I have a system that involves spawning lots of processes to work on the same set of data. Each process reports to one of a number of listener processes that collate the results and determines the next bit of work to do. There is also a fair amount of inter-process communication. I have found that pretty quickly, erlang runs out of memory.</div>
<div><br></div><div>What is the best way to find out what is going on and what the cause of this leak is?</div><div><br></div><div>Thanks for your help,</div><div><br></div><font color="#888888"><div>Andrew</div>
</font><br></div></div>_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a><br>
<a href="http://www.erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://www.erlang.org/mailman/listinfo/erlang-questions</a><br></blockquote></div><br>
</blockquote></div><br>