<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jan 23, 2015 at 6:03 PM, Lukas Larsson <span dir="ltr"><<a href="mailto:garazdawi@gmail.com" target="_blank">garazdawi@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">With a recon_alloc:memory(usage, current) value of 65 - 70%, this difference is expected. What is happening is that the memory allocators of the VM is not finding any good slots to put new heaps in, so it keeps requesting more memory from the OS. erlang:memory reports used memory, which is not the same as the memory requested from the OS. recon_alloc:memory(allocated, current) reports something very close to what has actually been requested from the OS, which is why this value is much closer to what you see with top.<br></div><div class="gmail_quote"><div><br></div><div>It would be interesting to see if you get the same results if you start the VM with "+Muacul 0", or if you get better utlization if you use that. If you want to know what it is that you are disabling you can read this: <a href="https://github.com/erlang/otp/blob/master/erts/emulator/internal_doc/CarrierMigration.md" target="_blank">https://github.com/erlang/otp/blob/master/erts/emulator/internal_doc/CarrierMigration.md</a>.</div><span class=""><font color="#888888"><div><br></div><div>Lukas</div></font></span></div></div></div></blockquote><div><br></div><div>Thank you Lukas I will try this option.</div><div><br></div><div>I have an update though, which is interesting. I am using lager as the logger, and in the logger I was printing out the body of the original request that I received. Since the requests are short lived (and the processes die after the logging), I imagined that the data would be freed. Instead, it looks like for some reason it is not.</div><div><br></div><div>I have disabled the logging and the BEAM size usage is much more stable (even though it periodically goes through the forced GC that I've set up when thresholds are hit).</div><div><br></div><div>I'll keep you posted on the "+Muacul 0" option.</div><div><br></div><div>Thanks,</div><div>r.</div><div> </div></div><br></div></div>