I've just pushed some changes that update parmetis to newest revision, and this has some consequences on packages that depend on parmetis.<div><br></div><div>Parmetis now depends on metis, and both can use 64-bit integers. This required an update to SuperLU_DIST to use this new interface which can now use 64-bit integers everywhere. Also, MUMPS needed to be updated (but is not 64-bit). All of these are available with --download-packagename (BuildSystem is always an adventure!). Patches are available upon request but I hope that the code maintainers accept them (I've sent them to their respective authors).</div>

<div><br></div><div>CHOLMOD needed updating too, but that isn't available as a --download-cholmod because it will be refactored into --download-suitesparse. Tim has graciously posted my patch on CHOLMOD's website:</div>

<div><br></div><div><a href="http://www.cise.ufl.edu/research/sparse/cholmod/">http://www.cise.ufl.edu/research/sparse/cholmod/</a></div><div><br></div><div>People that use sieve will need to rebuild as well since Matt uses parmetis directly. Potentially, sieve could work with 64-bit integers now, but I tried to go through sieve ... and then ran screaming in terror. I think I may have tripped on the bones of the last intrepid adventurer who ventured into sieve. It's hairy. At the very least, triangle and tetgen will have to be updated. Matt might also want to look at updating the other mesh partitioners (zoltan, hmetis, chaco, etc.)</div>

<div><br></div><div>If you use any of these packages, I recommend deleting your PETSC_ARCH and externalpackages directories, and re-running configure.</div><div><br></div><div>I tested each of the situations:</div><div><br>

</div><div>Matrix partitioning:</div><div><br></div><div>$ cd src/mat/examples/tutorials</div><div>$ make ex15</div><div>$ ./ex15 -mat_partitioning_type parmetis</div><div><br></div><div>SuperLU_DIST (w/ metis):</div><div>

<br></div><div>$ cd src/ksp/ksp/examples/tutorials</div><div>$ make ex15</div><div>$ ./ex15 -pc_type lu -pc_factor_mat_solver_package superlu_dist -ksp_view</div><div><br></div><div><div>SuperLU_DIST (w/ parmetis):</div>
<div>
<br></div><div>$ cd src/ksp/ksp/examples/tutorials</div><div>$ make ex15</div><div>$ mpiexec -n 2 ./ex15 -pc_type lu -pc_factor_mat_solver_package superlu_dist -ksp_view -mat_superlu_dist_matinput DISTRIBUTED -mat_superlu_dist_colperm PARMETIS</div>

<div><br></div></div><div><div>MUMPS (w/ metis):</div><div><br></div><div>$ cd src/ksp/ksp/examples/tutorials</div><div>$ make ex15</div><div>$ /ex15 -pc_type lu -pc_factor_mat_solver_package mumps -ksp_view -mat_mumps_icntl_7 5</div>

</div><div><br></div><div><div>MUMPS (w/ parmetis):</div><div><br></div><div>$ cd src/ksp/ksp/examples/tutorials</div><div>$ make ex15</div><div>$ mpiexec -n 2 ./ex15 -pc_type lu -pc_factor_mat_solver_package mumps -ksp_view -mat_mumps_icntl_28 2 -mat_mumps_icntl_29 2</div>

</div><div><br></div><div>I tried to do my best with testing, but I'm sure I missed something. Please let me know if there are any problems.</div>