Home
last modified time | relevance | path

Searched refs:rootdirect (Results 1 – 4 of 4) sorted by relevance

/petsc/src/vec/is/sf/impls/basic/
H A Dsfmpi.c71 PetscBool match, rootdirect[2], leafdirect[2]; in PetscSFLinkCreate_MPI() local
81rootdirect[i] = bas->rootcontig[i]; /* Pack roots… in PetscSFLinkCreate_MPI()
85rootdirect[i] = (bas->rootcontig[i] && op == MPI_REPLACE) ? PETSC_TRUE : PETSC_FALSE; /* Unpack ro… in PetscSFLinkCreate_MPI()
87rootdirect[i] = PETSC_FALSE; /* FETCH alw… in PetscSFLinkCreate_MPI()
99 rootdirect[PETSCSF_REMOTE] = PETSC_FALSE; in PetscSFLinkCreate_MPI()
110 rootdirect_mpi = rootdirect[PETSCSF_REMOTE] && (rootmtype_mpi == rootmtype) ? 1 : 0; in PetscSFLinkCreate_MPI()
189 if (rootdirect[i]) { /* Aha, we disguise rootdata as rootbuf */ in PetscSFLinkCreate_MPI()
228 link->rootdirect[i] = rootdirect[i]; in PetscSFLinkCreate_MPI()
H A Dsfpack.c928 if (!link->rootdirect[scope]) { /* If rootdata works directly as rootbuf, skip packing */ in PetscSFLinkPackRootData_Private()
993 if (!link->rootdirect[scope]) { /* If rootdata works directly as rootbuf, skip unpacking */ in PetscSFLinkUnpackRootData_Private()
1036 …if (bas->rootbuflen[scope] && !link->rootdirect[scope]) PetscCall(PetscSFLinkUnpackRootData_Privat… in PetscSFLinkUnpackRootData()
H A Dsfpack.h182 …PetscBool rootdirect[2], leafdirect[2]; /* Can root/leafdata be directly passed to SF (i.e., … member
/petsc/src/vec/is/sf/impls/basic/nvshmem/
H A Dsfnvshmem.cu692 PetscBool match, rootdirect[2], leafdirect[2]; in PetscSFLinkCreate_NVSHMEM() local
701rootdirect[PETSCSF_REMOTE] = PETSC_FALSE; /* send buffer has to be stand-alone (can't be rootdata)… in PetscSFLinkCreate_NVSHMEM()
704rootdirect[PETSCSF_REMOTE] = (PetscMemTypeNVSHMEM(rootmtype) && bas->rootcontig[PETSCSF_REMOTE]) ?… in PetscSFLinkCreate_NVSHMEM()
709rootdirect[PETSCSF_REMOTE] = (PetscMemTypeNVSHMEM(rootmtype) && bas->rootcontig[PETSCSF_REMOTE] &&… in PetscSFLinkCreate_NVSHMEM()
712 rootdirect[PETSCSF_REMOTE] = PETSC_FALSE; in PetscSFLinkCreate_NVSHMEM()
716 rootdirect[PETSCSF_REMOTE] = PETSC_FALSE; /* FETCH always need a separate rootbuf */ in PetscSFLinkCreate_NVSHMEM()
737 …link->rootdirect[PETSCSF_LOCAL] = PETSC_TRUE; /* For the local part we directly use root/leafdata … in PetscSFLinkCreate_NVSHMEM()
768 if (rootdirect[PETSCSF_REMOTE]) { in PetscSFLinkCreate_NVSHMEM()
782 link->rootdirect[PETSCSF_REMOTE] = rootdirect[PETSCSF_REMOTE]; in PetscSFLinkCreate_NVSHMEM()