<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Mon, Oct 29, 2018 at 4:56 PM Mark Adams via petsc-dev <<a href="mailto:petsc-dev@mcs.anl.gov">petsc-dev@mcs.anl.gov</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="ltr">I am building a fresh PETSc with GNU on Titan and I get these warnings about incompatible pointers in calls in PlexPartition to MarMetis.</div></div></blockquote><div><br></div><div>Looks like PETSc has 64-bit ints and ParMetis has 32-bit ints. Just have PETSc build ParMetis.</div><div><br></div><div> Thanks,</div><div><br></div><div> Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="ltr"><div>Mark</div><div><br></div><div><div>/lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c: In function 'PetscPartitionerPartition_ParMetis':</div><div>/lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1461:40: warning: passing argument 1 of 'METIS_SetDefaultOptions' from incompatible pointer type [-Wincompatible-pointer-types]</div><div> ierr = METIS_SetDefaultOptions(options); /* initialize all defaults */</div><div> ^~~~~~~</div><div>In file included from /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,</div><div> from /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:</div><div>/lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/metis.h:229:16: note: expected 'idx_t * {aka long int *}' but argument is of type 'PetscInt * {aka long long int *}'</div><div> METIS_API(int) METIS_SetDefaultOptions(idx_t *options);</div><div> ^~~~~~~~~~~~~~~~~~~~~~~</div><div>/lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1465:43: warning: passing argument 1 of 'METIS_PartGraphRecursive' from incompatible pointer type [-Wincompatible-pointer-types]</div><div> ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy, vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);</div><div> ^</div><div>In file included from /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,</div><div> from /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:</div><div>/lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/metis.h:199:16: note: expected 'idx_t * {aka long int *}' but argument is of type 'PetscInt * {aka long long int *}'</div><div> METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t *xadj,</div><div> ^~~~~~~~~~~~~~~~~~~~~~~~</div><div>/lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1465:51: warning: passing argument 2 of 'METIS_PartGraphRecursive' from incompatible pointer type [-Wincompatible-pointer-types]</div><div> ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy, vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);</div><div> ^</div><div>In file included from /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,</div><div> from /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:</div><div>/lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/metis.h:199:16: note: expected 'idx_t * {aka long int *}' but argument is of type 'PetscInt * {aka long long int *}'</div><div> METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t *xadj,</div><div> ^~~~~~~~~~~~~~~~~~~~~~~~</div><div>/lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1465:58: warning: passing argument 3 of 'METIS_PartGraphRecursive' from incompatible pointer type [-Wincompatible-pointer-types]</div><div> ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy, vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);</div><div> ^~~~</div><div>In file included from /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,</div><div> from /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:</div><div>/lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/metis.h:199:16: note: expected 'idx_t * {aka long int *}' but argument is of type 'PetscInt * {aka long long int *}'</div><div> METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t *xadj,</div><div> ^~~~~~~~~~~~~~~~~~~~~~~~</div><div>/lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1465:64: warning: passing argument 4 of 'METIS_PartGraphRecursive' from incompatible pointer type [-Wincompatible-pointer-types]</div><div> ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy, vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);</div><div> ^~~~~~</div><div>In file included from /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,</div><div> from /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:</div><div>/lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/metis.h:199:16: note: expected 'idx_t * {aka long int *}' but argument is of type 'PetscInt * {aka long long int *}'</div><div> METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t *xadj,</div><div> ^~~~~~~~~~~~~~~~~~~~~~~~</div><div>/lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1465:72: warning: passing argument 5 of 'METIS_PartGraphRecursive' from incompatible pointer type [-Wincompatible-pointer-types]</div><div> ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy, vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);</div><div> ^~~~</div><div>In file included from /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,</div><div> from /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:</div><div>/lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/metis.h:199:16: note: expected 'idx_t * {aka long int *}' but argument is of type 'PetscInt * {aka long long int *}'</div><div> METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t *xadj,</div><div> ^~~~~~~~~~~~~~~~~~~~~~~~</div><div>/lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1465:84: warning: passing argument 7 of 'METIS_PartGraphRecursive' from incompatible pointer type [-Wincompatible-pointer-types]</div><div> ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy, vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);</div><div> ^~~~~~</div><div>In file included from /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,</div><div> from /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:</div><div>/lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/metis.h:199:16: note: expected 'idx_t * {aka long int *}' but argument is of type 'PetscInt * {aka long long int *}'</div><div> METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t *xadj,</div><div> ^~~~~~~~~~~~~~~~~~~~~~~~</div><div>/lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1465:92: warning: passing argument 8 of 'METIS_PartGraphRecursive' from incompatible pointer type [-Wincompatible-pointer-types]</div><div> ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy, vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);</div><div> ^</div><div>In file included from /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,</div><div> from /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:</div><div>/lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/metis.h:199:16: note: expected 'idx_t * {aka long int *}' but argument is of type 'PetscInt * {aka long long int *}'</div><div> METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t *xadj,</div><div> ^~~~~~~~~~~~~~~~~~~~~~~~</div><div>/lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1465:116: warning: passing argument 11 of 'METIS_PartGraphRecursive' from incompatible pointer type [-Wincompatible-pointer-types]</div><div> ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy, vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);</div><div> ^~~~~~~</div><div>In file included from /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,</div><div> from /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:</div><div>/lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/metis.h:199:16: note: expected 'idx_t * {aka long int *}' but argument is of type 'PetscInt * {aka long long int *}'</div><div> METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t *xadj,</div><div> ^~~~~~~~~~~~~~~~~~~~~~~~</div><div>/lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1465:125: warning: passing argument 12 of 'METIS_PartGraphRecursive' from incompatible pointer type [-Wincompatible-pointer-types]</div><div> ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy, vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);</div><div> ^</div><div>In file included from /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,</div><div> from /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:</div><div>/lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/metis.h:199:16: note: expected 'idx_t * {aka long int *}' but argument is of type 'PetscInt * {aka long long int *}'</div><div> METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t *xadj,</div><div> ^~~~~~~~~~~~~~~~~~~~~~~~</div><div>/lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1465:135: warning: passing argument 13 of 'METIS_PartGraphRecursive' from incompatible pointer type [-Wincompatible-pointer-types]</div><div> ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy, vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);</div><div> ^~~~~~~~~~</div><div>In file included from /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,</div><div> from /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:</div><div>/lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/metis.h:199:16: note: expected 'idx_t * {aka long int *}' but argument is of type 'PetscInt * {aka long long int *}'</div></div><div><br></div><div><br></div><div> ..........</div></div></div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div><div><br></div><div><a href="http://www.cse.buffalo.edu/~knepley/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div></div></div>