PetscSFType#

String with the name of a PetscSF type. Each PetscSFType uses different mechanisms to perform the communication.

Synopsis#

typedef const char *PetscSFType;
#define PETSCSFBASIC      "basic"
#define PETSCSFNEIGHBOR   "neighbor"
#define PETSCSFALLGATHERV "allgatherv"
#define PETSCSFALLGATHER  "allgather"
#define PETSCSFGATHERV    "gatherv"
#define PETSCSFGATHER     "gather"
#define PETSCSFALLTOALL   "alltoall"
#define PETSCSFWINDOW     "window"

Available Types#

  • PETSCSFBASIC - use MPI sends and receives

  • PETSCSFNEIGHBOR - use MPI_Neighbor operations

  • PETSCSFALLGATHERV - use MPI_Allgatherv operations

  • PETSCSFALLGATHER - use MPI_Allgather operations

  • PETSCSFGATHERV - use MPI_Igatherv and MPI_Iscatterv operations

  • PETSCSFGATHER - use MPI_Igather and MPI_Iscatter operations

  • PETSCSFALLTOALL - use MPI_Ialltoall operations

  • PETSCSFWINDOW - use MPI_Win operations

Note#

Some PetscSFType only provide specialized code for a subset of the PetscSF operations and use PETSCSFBASIC for the others.

See Also#

PetscSF - an alternative to low-level MPI calls for data communication, PetscSFSetType(), PetscSF

Level#

beginner

Location#

include/petscsftypes.h


Index of all PetscSF routines
Table of Contents for all manual pages
Index of all manual pages