| #
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 ...
|