History log of /petsc/src/vec/is/sf/tests/ex25.c (Results 1 – 2 of 2)
Revision Date Author Comments
# bfd69959 22-Sep-2024 Satish Balay <balay@mcs.anl.gov>

Merge branch 'jczhang/2024-09-09/fix-sf-mpi-large-count-datatype' into 'main'

PetscSF: Support MPI derived data types created with large count

Closes #1625

See merge request petsc/petsc!7825


# d279a5e3 22-Sep-2024 Junchao Zhang <jczhang@mcs.anl.gov>

PetscSF: support MPI derived data types created with large count

When user created MPI derived data types with large count routines, e.g., MPI_Type_contiguous_c(4, MPI_DOUBLE, &newtype), and passed

PetscSF: support MPI derived data types created with large count

When user created MPI derived data types with large count routines, e.g., MPI_Type_contiguous_c(4, MPI_DOUBLE, &newtype), and passed newtype to PetscSF,
is it legal to decode the datatype with MPI_Type_get_envelope()? The MPI Forum debated but has yet to resolve this issue.

Our approach is to decode the datatype with MPI_Type_get_envelope_c() if available; otherwise with MPI_Type_get_envelope().

But currently we don't really support real big count values, say a type created by MPI_Type_contiguous_c(2^33, MPI_DOUBLE, &newtype).

We could support that, but just see no needs for now. We will error out if this kind of types are given to PetscSF.

show more ...