<div dir="ltr">I have implemented a similar code and its working great. Now an extra question: i would like to spawn a thread to monitor the threads allocation/deallocations, can i access this data from a different thread ?, if so, is there any API or example available ?<div>
<br></div><div>thanks again.</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Nov 26, 2013 at 2:10 PM, Eduardo Silva <span dir="ltr"><<a href="mailto:edsiper@gmail.com" target="_blank">edsiper@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">thanks for your help!, thats the info that i need.<div><br></div><div>best</div></div><div class="gmail_extra">
<div><div class="h5"><br><br><div class="gmail_quote">On Tue, Nov 26, 2013 at 2:01 PM, Jason Evans <span dir="ltr"><<a href="mailto:jasone@canonware.com" target="_blank">jasone@canonware.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div>On Nov 26, 2013, at 11:40 AM, Eduardo Silva <<a href="mailto:edsiper@gmail.com" target="_blank">edsiper@gmail.com</a>> wrote:<br>

<div><blockquote type="cite"><div dir="ltr"><div>i am interested into gather memory usage per Linux thread, as i am using jemalloc i think this can be done quering the arenas per thread. if i am correct, do you have some code example that accomplish something similar to this ?</div>


</div></blockquote><br></div></div><div>Threads don't own memory; allocated regions can be shared among threads, and allocation/deallocation can be split between threads.  That said, jemalloc does track total volume of allocation and deallocation on a per thread basis, so you can derive the information you want as long as you account for allocated regions that are shared among threads.  Take a look at the "thread.allocated" and "thread.deallocated" mallctl() interfaces in the man page:</div>

<div><br></div><div><span style="white-space:pre-wrap"> </span><a href="http://www.canonware.com/download/jemalloc/jemalloc-latest/doc/jemalloc.html" target="_blank">http://www.canonware.com/download/jemalloc/jemalloc-latest/doc/jemalloc.html</a></div>

<div><br></div><div>There is a relevant test program included with jemalloc:</div><div><br></div><div><span style="white-space:pre-wrap"> </span><a href="https://github.com/jemalloc/jemalloc/blob/dev/test/allocated.c" target="_blank">https://github.com/jemalloc/jemalloc/blob/dev/test/allocated.c</a></div>

<span><font color="#888888"><div><br></div><div>Jason</div></font></span></div></blockquote></div><br><br clear="all"><div><br></div></div></div><div class="im">-- <br><div dir="ltr">Eduardo Silva<br><a href="http://edsiper.linuxchile.cl" target="_blank">http://edsiper.linuxchile.cl</a><br>

<a href="http://monkey-project.com" target="_blank">http://monkey-project.com</a></div>
</div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr">Eduardo Silva<br><a href="http://edsiper.linuxchile.cl" target="_blank">http://edsiper.linuxchile.cl</a><br><a href="http://monkey-project.com" target="_blank">http://monkey-project.com</a></div>

</div>