Dear PETSc Team,
Following the merge request !4547 for fixing the Global To Natural map, I am implementing modifications to introduce a "natural" DM (i.e. the DM used for IO): see the discussion in
https://gitlab.com/petsc/petsc/-/merge_requests/4547. I am writing an example for that, very similar to src/dm/impls/plex/tests/ex44.c added by the merge request, and running on 2 processors. The idea is to: (i) create a DM (the same distributed 2x5 mesh
of ex44.c); (ii) call multiple times DMPlexDistribute with different partitioners and set one of the DMs as the "natural" DM; and (iii) see if we can reconstruct correctly the "natural" ordering and distribution from the last DM and the Global To Natural map.
I am having some troubles however with at least parmetis and ptscotch partitioners which raise an error inside DMPlexCreateGlobalToNatural. Here is the error:
[0]PETSC ERROR: --------------------- Error Message -------------------------------------------------------------- [0]PETSC ERROR: [1]PETSC ERROR: --------------------- Error Message -------------------------------------------------------------- [1]PETSC ERROR: Invalid argument [1]PETSC ERROR: Input array needs to be sorted Invalid argument [0]PETSC ERROR: Input array needs to be sorted [0]PETSC ERROR: See https://petsc.org/release/faq/ for trouble shooting. [0]PETSC ERROR: [1]PETSC ERROR: See https://petsc.org/release/faq/ for trouble shooting. [1]PETSC ERROR: Petsc Development GIT revision: v3.16.1-435-g007f11b901 GIT Date: 2021-12-01 14:31:21 +0000 Petsc Development GIT revision: v3.16.1-435-g007f11b901 GIT Date: 2021-12-01 14:31:21 +0000 [0]PETSC ERROR: ../ex47 on a arch-darwin-c-debug named marboeua-1.math.mcmaster.ca by alexismarboeuf Thu Dec 16 22:39:20 2021 [1]PETSC ERROR: ../ex47 on a arch-darwin-c-debug named marboeua-1.math.mcmaster.ca by alexismarboeuf Thu Dec 16 22:39:20 2021 [1]PETSC ERROR: [0]PETSC ERROR: Configure options --force --download-fblaslapack=1 --download-exodusii=1 --download-hdf5=1 --download-chaco=1 --download-metis=1 --download-parmetis=1 -download-ptscotch=1 --download-sowing=1 --download-hypre=1 --download-ml=1 --download-netcdf=1 --download-yaml=1 --download-zlib=1 --download-pnetcdf=1 --download-sieve=1 --with-boost=1 --with-boost-dir=/opt/homebrew/Cellar/boost/1.76.0 with-clanguage=C++ --with-c2html=0 --with-fortran-datatypes=1 --with-mpi-dir=/opt/homebrew/Cellar/mpich/3.4.2 --with-debugging=1 --with-ranlib=ranlib --with-x11=1 [0]PETSC ERROR: Configure options --force --download-fblaslapack=1 --download-exodusii=1 --download-hdf5=1 --download-chaco=1 --download-metis=1 --download-parmetis=1 -download-ptscotch=1 --download-sowing=1 --download-hypre=1 --download-ml=1 --download-netcdf=1 --download-yaml=1 --download-zlib=1 --download-pnetcdf=1 --download-sieve=1 --with-boost=1 --with-boost-dir=/opt/homebrew/Cellar/boost/1.76.0 with-clanguage=C++ --with-c2html=0 --with-fortran-datatypes=1 --with-mpi-dir=/opt/homebrew/Cellar/mpich/3.4.2 --with-debugging=1 --with-ranlib=ranlib --with-x11=1 [1]PETSC ERROR: #1 PetscSortedRemoveDupsInt() at /Users/alexismarboeuf/Documents/petsc2/src/sys/utils/sorti.c:308 [0]PETSC ERROR: #2 PetscSFCreateEmbeddedLeafSF() at /Users/alexismarboeuf/Documents/petsc2/src/vec/is/sf/interface/sf.c:1409 [0]PETSC ERROR: #1 PetscSortedRemoveDupsInt() at /Users/alexismarboeuf/Documents/petsc2/src/sys/utils/sorti.c:308 [1]PETSC ERROR: #2 PetscSFCreateEmbeddedLeafSF() at /Users/alexismarboeuf/Documents/petsc2/src/vec/is/sf/interface/sf.c:1409 [1]PETSC ERROR: #3 DMPlexCreateGlobalToNaturalSF() at /Users/alexismarboeuf/Documents/petsc2/src/dm/impls/plex/plexnatural.c:173 [1]PETSC ERROR: #4 DMPlexDistribute() at /Users/alexismarboeuf/Documents/petsc2/src/dm/impls/plex/plexdistribute.c:1755 [1]PETSC ERROR: #5 main() at /Users/alexismarboeuf/Documents/petsc2/src/dm/impls/plex/tests/ex47.c:289 [1]PETSC ERROR: PETSc Option Table entries: [1]PETSC ERROR: -petscpartitioner_type ptscotch [1]PETSC ERROR: ----------------End of Error Message -------send entire error message to petsc-ma...@mcs.anl.gov---------- Abort(62) on node 1 (rank 1 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, 62) - process 1 #3 DMPlexCreateGlobalToNaturalSF() at /Users/alexismarboeuf/Documents/petsc2/src/dm/impls/plex/plexnatural.c:173 [0]PETSC ERROR: #4 DMPlexDistribute() at /Users/alexismarboeuf/Documents/petsc2/src/dm/impls/plex/plexdistribute.c:1755 [0]PETSC ERROR: #5 main() at /Users/alexismarboeuf/Documents/petsc2/src/dm/impls/plex/tests/ex47.c:289 [0]PETSC ERROR: PETSc Option Table entries: [0]PETSC ERROR: -petscpartitioner_type ptscotch [0]PETSC ERROR: ----------------End of Error Message -------send entire error message to petsc-ma...@mcs.anl.gov---------- Abort(62) on node 0 (rank 0 in comm 0): application called MPI_Abort(MPI_COMM_WORLD, 62) - process 0
Thanks all for your help.
-------------------------------------------------------------------
Alexis
Marboeuf
Postdoctoral
fellow, Department of Mathematics & Statistics
Hamilton Hall room 409B, McMaster University 1280 Main Street West, Hamilton, Ontario L8S 4K1, Canada
EMail:
marbo...@mcmaster.ca
Tel.
+1 (905) 525 9140 ext. 27031
-------------------------------------------------------------------
|
- [petsc-dev] DMPlexCreateGlobalToNaturalSF and partitioners Alexis Marboeuf
- Re: [petsc-dev] DMPlexCreateGlobalToNaturalSF and par... Matthew Knepley
- Re: [petsc-dev] DMPlexCreateGlobalToNaturalSF and... Alexis Marboeuf