[petsc-dev] Plex - Metis warnings

Matthew Knepley knepley at gmail.com
Mon Oct 29 16:01:19 CDT 2018


On Mon, Oct 29, 2018 at 4:56 PM Mark Adams via petsc-dev <
petsc-dev at mcs.anl.gov> wrote:

> I am building a fresh PETSc with GNU on Titan and I get these warnings
> about incompatible pointers in calls in PlexPartition to MarMetis.
>

Looks like PETSc has 64-bit ints and ParMetis has 32-bit ints. Just have
PETSc build ParMetis.

  Thanks,

    Matt


> Mark
>
> /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:
> In function 'PetscPartitionerPartition_ParMetis':
> /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]
>          ierr = METIS_SetDefaultOptions(options); /* initialize all
> defaults */
>                                         ^~~~~~~
> In file included from
> /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,
>                  from
> /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:
> /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 *}'
>  METIS_API(int) METIS_SetDefaultOptions(idx_t *options);
>                 ^~~~~~~~~~~~~~~~~~~~~~~
> /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]
>            ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy,
> vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);
>                                            ^
> In file included from
> /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,
>                  from
> /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:
> /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 *}'
>  METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t
> *xadj,
>                 ^~~~~~~~~~~~~~~~~~~~~~~~
> /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]
>            ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy,
> vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);
>                                                    ^
> In file included from
> /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,
>                  from
> /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:
> /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 *}'
>  METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t
> *xadj,
>                 ^~~~~~~~~~~~~~~~~~~~~~~~
> /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]
>            ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy,
> vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);
>                                                           ^~~~
> In file included from
> /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,
>                  from
> /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:
> /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 *}'
>  METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t
> *xadj,
>                 ^~~~~~~~~~~~~~~~~~~~~~~~
> /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]
>            ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy,
> vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);
>                                                                 ^~~~~~
> In file included from
> /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,
>                  from
> /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:
> /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 *}'
>  METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t
> *xadj,
>                 ^~~~~~~~~~~~~~~~~~~~~~~~
> /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]
>            ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy,
> vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);
>
> ^~~~
> In file included from
> /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,
>                  from
> /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:
> /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 *}'
>  METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t
> *xadj,
>                 ^~~~~~~~~~~~~~~~~~~~~~~~
> /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]
>            ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy,
> vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);
>
>           ^~~~~~
> In file included from
> /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,
>                  from
> /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:
> /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 *}'
>  METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t
> *xadj,
>                 ^~~~~~~~~~~~~~~~~~~~~~~~
> /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]
>            ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy,
> vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);
>
>                   ^
> In file included from
> /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,
>                  from
> /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:
> /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 *}'
>  METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t
> *xadj,
>                 ^~~~~~~~~~~~~~~~~~~~~~~~
> /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]
>            ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy,
> vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);
>
>                                           ^~~~~~~
> In file included from
> /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,
>                  from
> /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:
> /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 *}'
>  METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t
> *xadj,
>                 ^~~~~~~~~~~~~~~~~~~~~~~~
> /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]
>            ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy,
> vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);
>
>                                                    ^
> In file included from
> /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,
>                  from
> /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:
> /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 *}'
>  METIS_API(int) METIS_PartGraphRecursive(idx_t *nvtxs, idx_t *ncon, idx_t
> *xadj,
>                 ^~~~~~~~~~~~~~~~~~~~~~~~
> /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]
>            ierr = METIS_PartGraphRecursive(&nvtxs, &ncon, xadj, adjncy,
> vwgt, NULL, adjwgt, &nparts, tpwgts, ubvec, options, &edgeCut, assignment);
>
>                                                              ^~~~~~~~~~
> In file included from
> /lustre/atlas/proj-shared/geo127/petsc_titan_opt64idx_gnu_cuda/include/parmetis.h:18:0,
>                  from
> /lustre/atlas1/geo127/proj-shared/petsc/src/dm/impls/plex/plexpartition.c:1395:
> /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 *}'
>
>
>  ..........
>


-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener

https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20181029/fe154ad1/attachment-0001.html>


More information about the petsc-dev mailing list