<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Mar 10, 2017 at 9:09 AM, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br>
> On Mar 10, 2017, at 9:58 AM, Lisandro Dalcin <<a href="mailto:dalcinl@gmail.com">dalcinl@gmail.com</a>> wrote:<br>
><br>
> On 10 March 2017 at 03:19, Barry Smith <<a href="mailto:bsmith@mcs.anl.gov">bsmith@mcs.anl.gov</a>> wrote:<br>
>     PetscMallocRegister(malloc,<wbr>realloc,free,&basicmalloc);<br>
>     PetscMallocRegister(<wbr>PetscMallocDebug,<wbr>PetscReallocDebug,<wbr>PetscFreeDebug,&debugmalloc);<br>
>     PetscMallocRegister(<wbr>PetscMallocHBW,<wbr>PetscReallocHBW,PetscFreeHBW,&<wbr>hbwmalloc);<br>
><br>
> I'm wondering whether we should also handle calloc() here, and implement PetscCalloc properly. As I understand it, calloc != malloc+memset, and the differences might be important in multicore+multithreading scenarios and the first-touch policy.<br>
<br></span></blockquote><div><br></div><div>My intuition is that any HPC code that benefits from mapping the zero page vs memset is doing something wrong.</div><div><br></div><div>Jeff</div><div><br></div></div><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">Jeff Hammond<br><a href="mailto:jeff.science@gmail.com" target="_blank">jeff.science@gmail.com</a><br><a href="http://jeffhammond.github.io/" target="_blank">http://jeffhammond.github.io/</a></div>
</div></div>