<div dir="ltr">Thanks Lisandro,<div><br></div><div>PetscHSetI and PetscHMapI work pretty well.  </div><div><br></div><div>Even though I did not do any performance profiling, I have some questions on this. </div><div><br></div><div>What is the right way to preallocate the memory for PetscHSetI and PetscHMapI? Just call "XXXResize()"?  Should we always need to figure out the right size of the hash table? Or just leave the hash table  automatically reallocate the memory?   Dynamic memory reallocation will hurt any performance?</div><div><br></div><div>Thanks,</div><div><br></div><div>Fande,</div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Mar 25, 2019 at 3:37 AM Lisandro Dalcin <<a href="mailto:dalcinl@gmail.com">dalcinl@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, 25 Mar 2019 at 02:40, Matthew Knepley via petsc-users <<a href="mailto:petsc-users@mcs.anl.gov" target="_blank">petsc-users@mcs.anl.gov</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr">On Sun, Mar 24, 2019 at 12:38 PM Fande Kong via petsc-users <<a href="mailto:petsc-users@mcs.anl.gov" target="_blank">petsc-users@mcs.anl.gov</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr">Hi All,<br><div><br></div><div>Since PetscTable will be replaced by khash in the future somehow,  it is better to use khash for new implementations. I was wondering where I can find some examples that use khash? Do we have any petsc wrappers of khash?</div></div></div></div></blockquote><div><br></div><div>First look here:</div><div><br></div><div>  <a href="https://bitbucket.org/petsc/petsc/src/master/include/petsc/private/hashseti.h" target="_blank">https://bitbucket.org/petsc/petsc/src/master/include/petsc/private/hashseti.h</a></div><div><br></div></div></div></div></blockquote><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><div class="gmail_quote"><div></div><div>and the other associated files (setij, mapi, mapij). Lisandro did a good job organizing</div><div>these, and we might have already defined what you want.</div><div><br></div></div></div></div></blockquote><div><br></div><div>It is even documented, which is extremely unusual coming from me!!!</div><div><br></div></div>-- <br><div dir="ltr" class="gmail-m_-9062707936146052761gmail_signature"><div dir="ltr"><div>Lisandro Dalcin<br>============<br>Research Scientist<br>Extreme Computing Research Center (ECRC)<br>King Abdullah University of Science and Technology (KAUST)<br><a href="http://ecrc.kaust.edu.sa/" target="_blank">http://ecrc.kaust.edu.sa/</a><br></div></div></div></div>
</blockquote></div>