On Mon, Oct 29, 2018 at 4:56 PM Mark Adams via petsc-dev <
petsc-dev@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/>

Reply via email to