Home
last modified time | relevance | path

Searched refs:leafdata (Results 1 – 25 of 26) sorted by relevance

12

/petsc/src/vec/is/sf/tutorials/
H A Dex1.c172 PetscInt *rootdata, *leafdata; in main() local
175 PetscCall(PetscMalloc2(nrootsalloc, &rootdata, nleavesalloc, &leafdata)); in main()
180 for (i = 0; i < nleavesalloc; i++) leafdata[i] = -1; in main()
183 PetscCall(PetscSFRegisterPersistent(sf, MPIU_INT, rootdata, leafdata)); in main()
185 PetscCall(PetscSFBcastBegin(sf, MPIU_INT, rootdata, leafdata, MPI_REPLACE)); in main()
186 PetscCall(PetscSFBcastEnd(sf, MPIU_INT, rootdata, leafdata, MPI_REPLACE)); in main()
188 PetscCall(PetscSFDeregisterPersistent(sf, MPIU_INT, rootdata, leafdata)); in main()
192 PetscCall(PetscIntView(nleavesalloc, leafdata, PETSC_VIEWER_STDOUT_WORLD)); in main()
193 PetscCall(PetscFree2(rootdata, leafdata)); in main()
199 char *rootdata, *leafdata; in main() local
[all …]
H A Dex1f.F9016 PetscInt rootdata(6), leafdata(6)
84 leafdata(i) = -1
88 PetscCallA(PetscSFBcastBegin(sf, MPIU_INTEGER, rootdata, leafdata, MPI_REPLACE, ierr))
89 PetscCallA(PetscSFBcastEnd(sf, MPIU_INTEGER, rootdata, leafdata, MPI_REPLACE, ierr))
93 PetscCallA(PetscIntView(nleavesalloc, leafdata, PETSC_VIEWER_STDOUT_WORLD, ierr))
96 PetscCallA(PetscSFReduceBegin(sf, MPIU_INTEGER, leafdata, rootdata, MPI_SUM, ierr))
97 PetscCallA(PetscSFReduceEnd(sf, MPIU_INTEGER, leafdata, rootdata, MPI_SUM, ierr))
99 PetscCallA(PetscIntView(nleavesalloc, leafdata, PETSC_VIEWER_STDOUT_WORLD, ierr))
/petsc/src/vec/is/sf/tests/
H A Dex3.c12 PetscScalar *rootdata, *leafdata, *leafupdate; in main() local
63 PetscCall(VecGetArray(y, &leafdata)); in main()
67 PetscCall(PetscSFBcastBegin(gathersf, MPIU_SCALAR, rootdata, leafdata, MPI_REPLACE)); in main()
68 PetscCall(PetscSFBcastEnd(gathersf, MPIU_SCALAR, rootdata, leafdata, MPI_REPLACE)); in main()
69 PetscCall(VecRestoreArray(y, &leafdata)); in main()
71 PetscCall(VecGetArray(y, &leafdata)); in main()
74 PetscCall(PetscSFFetchAndOpBegin(gathersf, MPIU_SCALAR, rootdata, leafdata, leafupdate, op)); in main()
75 PetscCall(PetscSFFetchAndOpEnd(gathersf, MPIU_SCALAR, rootdata, leafdata, leafupdate, op)); in main()
89 PetscCall(VecRestoreArray(y, &leafdata)); in main()
118 PetscCall(VecGetArray(y, &leafdata)); in main()
[all …]
H A Dex4k.kokkos.cxx41 PetscScalar *rootdata = NULL, *leafdata = NULL, *pbuf, *ebuf; in main() local
74 PetscCall(PetscMalloc2(maxn, &rootdata, maxn, &leafdata)); in main()
77 PetscCallCXX(leafdata = (PetscScalar *)Kokkos::kokkos_malloc(sizeof(PetscScalar) * maxn)); in main()
115 PetscCall(PetscArraycpy(leafdata, ebuf, n)); in main()
118 Kokkos::View<PetscScalar *> dst2((PetscScalar *)leafdata, n); in main()
137 … PetscCall(PetscSFBcastWithMemTypeBegin(sf[j], MPIU_SCALAR, mtype, rootdata, mtype, leafdata, op)); in main()
138 PetscCall(PetscSFBcastEnd(sf[j], MPIU_SCALAR, rootdata, leafdata, op)); in main()
139 …PetscCall(PetscSFReduceWithMemTypeBegin(sf[j], MPIU_SCALAR, mtype, leafdata, mtype, rootdata, op)); in main()
140 PetscCall(PetscSFReduceEnd(sf[j], MPIU_SCALAR, leafdata, rootdata, op)); in main()
155 PetscCall(PetscFree2(rootdata, leafdata)); in main()
[all …]
H A Dex25.c13 int *rootdata = NULL, *leafdata = NULL; in main() local
39 …PetscCall(PetscCalloc2(nroots * m, &rootdata, nleaves * m, &leafdata)); // allocate fat nodes to a… in main()
51 …PetscCall(PetscSFBcastBegin(sf, newtype, rootdata, leafdata, MPI_REPLACE)); // bcast rootdata to … in main()
52 PetscCall(PetscSFBcastEnd(sf, newtype, rootdata, leafdata, MPI_REPLACE)); in main()
54 …if (rank == 1) PetscCheck(leafdata[nleaves * m - 1] == 123, PETSC_COMM_SELF, PETSC_ERR_PLIB, "SF: … in main()
57 PetscCall(PetscFree2(rootdata, leafdata)); in main()
H A Dex17.c13 char *rootdata = NULL, *leafdata = NULL; in main() local
43 PetscCall(PetscMalloc2(nroots, &rootdata, nleaves, &leafdata)); in main()
49 …PetscCall(PetscSFBcastBegin(sf, MPI_SIGNED_CHAR, rootdata, leafdata, MPI_REPLACE)); /* rank 0->1, … in main()
50 PetscCall(PetscSFBcastEnd(sf, MPI_SIGNED_CHAR, rootdata, leafdata, MPI_REPLACE)); in main()
51 …PetscCall(PetscSFReduceBegin(sf, MPI_SIGNED_CHAR, leafdata, rootdata, MPI_SUM)); /* rank 1->0, add… in main()
52 PetscCall(PetscSFReduceEnd(sf, MPI_SIGNED_CHAR, leafdata, rootdata, MPI_SUM)); in main()
55 PetscCall(PetscFree2(rootdata, leafdata)); in main()
/petsc/src/binding/petsc4py/src/petsc4py/PETSc/
H A DSF.pyx168 Locations of leaves in leafdata buffers.
204 Locations of leaves in leafdata buffers, pass `None` for contiguous
434 def bcastBegin(self, unit: Datatype, ndarray rootdata, ndarray leafdata, op: Op) -> None: argument
448 leafdata
461 <void*>PyArray_DATA(leafdata), cop))
463 def bcastEnd(self, unit: Datatype, ndarray rootdata, ndarray leafdata, op: Op) -> None: argument
474 leafdata
487 <void*>PyArray_DATA(leafdata), cop))
489 def reduceBegin(self, unit: Datatype, ndarray leafdata, ndarray rootdata, op: Op) -> None: argument
490 """Begin reduction of leafdata into rootdata.
[all …]
/petsc/src/vec/is/sf/interface/ftn-custom/
H A Dzsf.c135 void *leafdata; in petscsfbcastbegin_() local
142 *ierr = F90Array1dAccess(lptr, dtype, (void **)&leafdata PETSC_F90_2PTR_PARAM(lptrd)); in petscsfbcastbegin_()
144 *ierr = PetscSFBcastBegin(*sf, dtype, rootdata, leafdata, cop); in petscsfbcastbegin_()
151 void *leafdata; in petscsfbcastend_() local
158 *ierr = F90Array1dAccess(lptr, dtype, (void **)&leafdata PETSC_F90_2PTR_PARAM(lptrd)); in petscsfbcastend_()
160 *ierr = PetscSFBcastEnd(*sf, dtype, rootdata, leafdata, cop); in petscsfbcastend_()
166 const void *leafdata; in petscsfreducebegin_() local
174 *ierr = F90Array1dAccess(lptr, dtype, (void **)&leafdata PETSC_F90_2PTR_PARAM(lptrd)); in petscsfreducebegin_()
176 *ierr = PetscSFReduceBegin(*sf, dtype, leafdata, rootdata, cop); in petscsfreducebegin_()
182 const void *leafdata; in petscsfreduceend_() local
[all …]
/petsc/src/vec/is/sf/impls/basic/allgatherv/
H A Dsfallgatherv.c102 …t, PetscMemType rootmtype, const void *rootdata, PetscMemType leafmtype, void *leafdata, MPI_Op op) in PetscSFBcastBegin_Allgatherv() argument
112 …PetscCall(PetscSFLinkCreate(sf, unit, rootmtype, rootdata, leafmtype, leafdata, op, PETSCSF_BCAST,… in PetscSFBcastBegin_Allgatherv()
129 …herv(PetscSF sf, MPI_Datatype unit, PetscMemType leafmtype, const void *leafdata, PetscMemType roo… in PetscSFReduceBegin_Allgatherv() argument
140 …PetscCall(PetscSFLinkCreate(sf, unit, rootmtype, rootdata, leafmtype, leafdata, op, PETSCSF_REDUCE… in PetscSFReduceBegin_Allgatherv()
144 …PetscCall((*link->Memcpy)(link, rootmtype, rootdata, leafmtype, (const char *)leafdata + (size_t)r… in PetscSFReduceBegin_Allgatherv()
148 PetscCall(PetscSFLinkPackLeafData(sf, link, PETSCSF_REMOTE, leafdata)); in PetscSFReduceBegin_Allgatherv()
195 … PetscSFReduceEnd_Allgatherv(PetscSF sf, MPI_Datatype unit, const void *leafdata, void *rootdata, … in PetscSFReduceEnd_Allgatherv() argument
207 PetscCall(PetscSFLinkGetInUse(sf, unit, rootdata, leafdata, PETSC_OWN_POINTER, &link)); in PetscSFReduceEnd_Allgatherv()
210 PetscCall(PetscSFReduceEnd_Basic(sf, unit, leafdata, rootdata, op)); in PetscSFReduceEnd_Allgatherv()
215 …atatype unit, PetscMemType rootmtype, const void *rootdata, PetscMemType leafmtype, void *leafdata) in PetscSFBcastToZero_Allgatherv() argument
[all …]
/petsc/src/vec/is/sf/impls/basic/allgather/
H A Dsfallgather.c31 …t, PetscMemType rootmtype, const void *rootdata, PetscMemType leafmtype, void *leafdata, MPI_Op op) in PetscSFBcastBegin_Allgather() argument
40 …PetscCall(PetscSFLinkCreate(sf, unit, rootmtype, rootdata, leafmtype, leafdata, op, PETSCSF_BCAST,… in PetscSFBcastBegin_Allgather()
51 …ther(PetscSF sf, MPI_Datatype unit, PetscMemType leafmtype, const void *leafdata, PetscMemType roo… in PetscSFReduceBegin_Allgather() argument
62 …PetscCall(PetscSFLinkCreate(sf, unit, rootmtype, rootdata, leafmtype, leafdata, op, PETSCSF_REDUCE… in PetscSFReduceBegin_Allgather()
66 …PetscCall((*link->Memcpy)(link, rootmtype, rootdata, leafmtype, (const char *)leafdata + (size_t)r… in PetscSFReduceBegin_Allgather()
71 PetscCall(PetscSFLinkPackLeafData(sf, link, PETSCSF_REMOTE, leafdata)); in PetscSFReduceBegin_Allgather()
85 …atatype unit, PetscMemType rootmtype, const void *rootdata, PetscMemType leafmtype, void *leafdata) in PetscSFBcastToZero_Allgather() argument
95 …PetscCall(PetscSFLinkCreate(sf, unit, rootmtype, rootdata, leafmtype, leafdata, MPI_REPLACE, PETSC… in PetscSFBcastToZero_Allgather()
103 PetscCall(PetscSFLinkGetInUse(sf, unit, rootdata, leafdata, PETSC_OWN_POINTER, &link)); in PetscSFBcastToZero_Allgather()
107 …PetscCall((*link->Memcpy)(link, PETSC_MEMTYPE_DEVICE, leafdata, PETSC_MEMTYPE_HOST, link->leafbuf[… in PetscSFBcastToZero_Allgather()
/petsc/src/vec/is/sf/impls/window/
H A Dsfwindow.c30 void *leafdata; member
427 …e PetscSFGetWindow(PetscSF sf, MPI_Datatype unit, void *rootdata, void *leafdata, PetscSFWindowSyn… in PetscSFGetWindow() argument
455 …(link->flavor == w->flavor && link->rootdata == rootdata && link->leafdata == leafdata) ? PETSC_TR… in PetscSFGetWindow()
490 link->leafdata = leafdata; in PetscSFGetWindow()
505 link->leafdata = leafdata; in PetscSFGetWindow()
605 …Window(PetscSF sf, MPI_Datatype unit, const void *rootdata, const void *leafdata, MPI_Win *win, MP… in PetscSFFindWindow() argument
622 if (rootdata == link->rootdata && leafdata == link->leafdata && bytes == link->bytes) { in PetscSFFindWindow()
728 link->leafdata = NULL; in PetscSFRestoreWindow()
861 …egisterPersistent_Window(PetscSF sf, MPI_Datatype unit, const void *rootdata, const void *leafdata) in PetscSFRegisterPersistent_Window() argument
886 link->leafdata = (void *)leafdata; in PetscSFRegisterPersistent_Window()
[all …]
/petsc/src/vec/is/sf/impls/basic/
H A Dsfbasic.c352 …t, PetscMemType rootmtype, const void *rootdata, PetscMemType leafmtype, void *leafdata, MPI_Op op) in PetscSFBcastBegin_Basic() argument
358 …PetscCall(PetscSFLinkCreate(sf, unit, rootmtype, rootdata, leafmtype, leafdata, op, PETSCSF_BCAST,… in PetscSFBcastBegin_Basic()
364 PetscCall(PetscSFLinkScatterLocal(sf, link, PETSCSF_ROOT2LEAF, (void *)rootdata, leafdata, op)); in PetscSFBcastBegin_Basic()
368 …tscSFBcastEnd_Basic(PetscSF sf, MPI_Datatype unit, const void *rootdata, void *leafdata, MPI_Op op) in PetscSFBcastEnd_Basic() argument
374 PetscCall(PetscSFLinkGetInUse(sf, unit, rootdata, leafdata, PETSC_OWN_POINTER, &link)); in PetscSFBcastEnd_Basic()
378 PetscCall(PetscSFLinkUnpackLeafData(sf, link, PETSCSF_REMOTE, leafdata, op)); in PetscSFBcastEnd_Basic()
385 …asic(PetscSF sf, MPI_Datatype unit, PetscMemType leafmtype, const void *leafdata, PetscMemType roo… in PetscSFLeafToRootBegin_Basic() argument
390 PetscCall(PetscSFLinkCreate(sf, unit, rootmtype, rootdata, leafmtype, leafdata, op, sfop, &link)); in PetscSFLeafToRootBegin_Basic()
391 PetscCall(PetscSFLinkPackLeafData(sf, link, PETSCSF_REMOTE, leafdata)); in PetscSFLeafToRootBegin_Basic()
398 …asic(PetscSF sf, MPI_Datatype unit, PetscMemType leafmtype, const void *leafdata, PetscMemType roo… in PetscSFReduceBegin_Basic() argument
[all …]
H A Dsfpack.c224 …leafstart, PetscSFPackOpt leafopt, const PetscInt *leafidx, const void *leafdata, void *leafupdate…
227 const Type *ldata = (const Type *)leafdata; \
420 …pe rootmtype, const void *rootdata, PetscMemType leafmtype, const void *leafdata, MPI_Op op, Petsc… in PetscSFLinkCreate() argument
423 PetscCall(PetscSFSetErrorOnUnsupportedOverlap(sf, unit, rootdata, leafdata)); in PetscSFLinkCreate()
427 PetscCall(PetscSFLinkNvshmemCheck(sf, rootmtype, rootdata, leafmtype, leafdata, &use_nvshmem)); in PetscSFLinkCreate()
429 …PetscCall(PetscSFLinkCreate_NVSHMEM(sf, unit, rootmtype, rootdata, leafmtype, leafdata, op, sfop, … in PetscSFLinkCreate()
434 …PetscCall(PetscSFLinkCreate_MPI(sf, unit, rootmtype, rootdata, leafmtype, leafdata, op, sfop, myli… in PetscSFLinkCreate()
438 …tInUse(PetscSF sf, MPI_Datatype unit, const void *rootdata, const void *leafdata, PetscCopyMode cm… in PetscSFLinkGetInUse() argument
448 if (match && (rootdata == link->rootdata) && (leafdata == link->leafdata)) { in PetscSFLinkGetInUse()
472 link->leafdata = NULL; in PetscSFLinkReclaim()
[all …]
H A Dsfmpi.c64 … xrootmtype, const void *rootdata, PetscMemType xleafmtype, const void *leafdata, MPI_Op op, Petsc… in PetscSFLinkCreate_MPI() argument
132 …eafreqsinited[direction][leafmtype][1] && link->leafdatadirect[direction][leafmtype] != leafdata) { in PetscSFLinkCreate_MPI()
199 link->leafbuf[i][leafmtype] = (char *)leafdata + sf->leafstart[i] * link->unitbytes; in PetscSFLinkCreate_MPI()
222 if (leafdirect_mpi) link->leafdatadirect[direction][leafmtype] = leafdata; in PetscSFLinkCreate_MPI()
226 link->leafdata = leafdata; in PetscSFLinkCreate_MPI()
/petsc/src/vec/is/sf/interface/
H A Dsf.c1343 signed char *rootdata, *leafdata, *leafmem; in PetscSFCreateEmbeddedRootSF() local
1372 leafdata = PetscSafePointerPlusOffset(leafmem, -minleaf); in PetscSFCreateEmbeddedRootSF()
1375 PetscCall(PetscSFBcastBegin(sf, MPI_SIGNED_CHAR, rootdata, leafdata, MPI_REPLACE)); in PetscSFCreateEmbeddedRootSF()
1376 PetscCall(PetscSFBcastEnd(sf, MPI_SIGNED_CHAR, rootdata, leafdata, MPI_REPLACE)); in PetscSFCreateEmbeddedRootSF()
1385 esf_nleaves += (leafdata[j] ? 1 : 0); in PetscSFCreateEmbeddedRootSF()
1391 if (leafdata[j]) { in PetscSFCreateEmbeddedRootSF()
1487 …e PetscSFBcastBegin(PetscSF sf, MPI_Datatype unit, const void *rootdata, void *leafdata, MPI_Op op) in PetscSFBcastBegin() argument
1496 PetscCall(PetscGetMemType(leafdata, &leafmtype)); in PetscSFBcastBegin()
1497 PetscUseTypeMethod(sf, BcastBegin, unit, rootmtype, rootdata, leafmtype, leafdata, op); in PetscSFBcastBegin()
1523 …t, PetscMemType rootmtype, const void *rootdata, PetscMemType leafmtype, void *leafdata, MPI_Op op) in PetscSFBcastWithMemTypeBegin() argument
[all …]
/petsc/include/
H A Dpetscsf.h215 …scSFBcastAndOpBegin(PetscSF sf, MPI_Datatype unit, const void *rootdata, void *leafdata, MPI_Op op) in PetscSFBcastAndOpBegin() argument
217 return PetscSFBcastBegin(sf, unit, rootdata, leafdata, op); in PetscSFBcastAndOpBegin()
221 …etscSFBcastAndOpEnd(PetscSF sf, MPI_Datatype unit, const void *rootdata, void *leafdata, MPI_Op op) in PetscSFBcastAndOpEnd() argument
223 return PetscSFBcastEnd(sf, unit, rootdata, leafdata, op); in PetscSFBcastAndOpEnd()
227 …t, PetscMemType rootmtype, const void *rootdata, PetscMemType leafmtype, void *leafdata, MPI_Op op) in PetscSFBcastAndOpWithMemtypeBegin() argument
229 return PetscSFBcastWithMemTypeBegin(sf, unit, rootmtype, rootdata, leafmtype, leafdata, op); in PetscSFBcastAndOpWithMemtypeBegin()
/petsc/src/dm/impls/plex/
H A Dplexsfc.c438 PetscInt *rootdata, *leafdata; in CreateDonorToPeriodicSF() local
447 PetscCall(PetscCalloc2(2 * nroots, &rootdata, 2 * nroots, &leafdata)); in CreateDonorToPeriodicSF()
451 leafdata[point] = point_sizes[point - pStart]; in CreateDonorToPeriodicSF()
453 PetscCall(PetscSFReduceBegin(face_sf, MPIU_INT, leafdata, rootdata + nroots, MPIU_SUM)); in CreateDonorToPeriodicSF()
454 PetscCall(PetscSFReduceEnd(face_sf, MPIU_INT, leafdata, rootdata + nroots, MPIU_SUM)); in CreateDonorToPeriodicSF()
473 PetscCall(PetscSFBcastBegin(face_sf, MPIU_2INT, rootdata, leafdata, MPI_REPLACE)); in CreateDonorToPeriodicSF()
474 PetscCall(PetscSFBcastEnd(face_sf, MPIU_2INT, rootdata, leafdata, MPI_REPLACE)); in CreateDonorToPeriodicSF()
479 if (leafdata[2 * point + 1] < 0) continue; in CreateDonorToPeriodicSF()
480 leaf_offset += leafdata[2 * point + 1]; in CreateDonorToPeriodicSF()
488 PetscInt cl_size = leafdata[2 * point + 1]; in CreateDonorToPeriodicSF()
[all …]
/petsc/src/vec/is/sf/impls/basic/gatherv/
H A Dsfgatherv.c43 …cMemType rootmtype, void *rootdata, PetscMemType leafmtype, const void *leafdata, void *leafupdate… in PetscSFFetchAndOpBegin_Gatherv() argument
49 PetscCall(PetscSFReduceBegin(sf, unit, leafdata, rootdata, op)); in PetscSFFetchAndOpBegin_Gatherv()
/petsc/src/vec/is/utils/
H A Disltog.c1230 PetscInt *mask, *mrootdata, *leafdata, *newleafdata, *leafrd, *tmpg; in ISLocalToGlobalMappingSetUpBlockInfo_Private() local
1264 …PetscCall(PetscMalloc3(2 * PetscMax(mnroots, nroots), &mrootdata, 2 * nleaves, &leafdata, nleaves,… in ISLocalToGlobalMappingSetUpBlockInfo_Private()
1270 PetscCall(PetscSFBcastBegin(sf, MPIU_2INT, mrootdata, leafdata, MPI_REPLACE)); in ISLocalToGlobalMappingSetUpBlockInfo_Private()
1271 PetscCall(PetscSFBcastEnd(sf, MPIU_2INT, mrootdata, leafdata, MPI_REPLACE)); in ISLocalToGlobalMappingSetUpBlockInfo_Private()
1275 newnleaves += leafdata[2 * i]; in ISLocalToGlobalMappingSetUpBlockInfo_Private()
1276 leafrd[i] = leafdata[2 * i]; in ISLocalToGlobalMappingSetUpBlockInfo_Private()
1284 newsfnode[m].index = leafdata[2 * i + 1] + j; in ISLocalToGlobalMappingSetUpBlockInfo_Private()
1291 for (i = 0; i < nleaves; i++) leafdata[i] = rank; in ISLocalToGlobalMappingSetUpBlockInfo_Private()
1293 PetscCall(PetscSFGatherBegin(sf, MPIU_INT, leafdata, mrootdata)); in ISLocalToGlobalMappingSetUpBlockInfo_Private()
1294 PetscCall(PetscSFGatherEnd(sf, MPIU_INT, leafdata, mrootdata)); in ISLocalToGlobalMappingSetUpBlockInfo_Private()
[all …]
/petsc/doc/manual/
H A Dvec.md1391 `PetscSF` communicates between `rootdata` and `leafdata` arrays. `rootdata` is distributed across t…
1403leafdata` is similar to PETSc local vectors; each MPI process's `leafdata` array can contain "ghos…
1416 // provide the matching location in rootdata for each entry in leafdata
1444 PetscInt *rootdata, *leafdata;
1454 Finally, we use the `PetscSF` to communicate `rootdata` to `leafdata`:
1457 PetscSFBcastBegin(sf, MPIU_INT, rootdata, leafdata, MPI_REPLACE);
1458 PetscSFBcastEnd(sf, MPIU_INT, rootdata, leafdata, MPI_REPLACE);
1461 Now `leafdata` on MPI rank 0 contains (1, 3, 2) and on MPI rank 1 contains (1, 2, 3).
1463 It is also possible to move `leafdata` to `rootdata` using
1466 PetscSFReduceBegin(sf, MPIU_INT, leafdata, rootdata, MPIU_SUM);
[all …]
/petsc/src/vec/is/sf/impls/basic/nvshmem/
H A Dsfnvshmem.cu159 …pe rootmtype, const void *rootdata, PetscMemType leafmtype, const void *leafdata, PetscBool *use_n… in PetscSFLinkNvshmemCheck() argument
182 PetscInt hasNullRank = (!rootdata && !leafdata) ? 1 : 0; in PetscSFLinkNvshmemCheck()
191 …PetscInt oneCuda = (!rootdata || PetscMemTypeCUDA(rootmtype)) && (!leafdata || PetscMemTypeCUDA(le… in PetscSFLinkNvshmemCheck()
687 …pe rootmtype, const void *rootdata, PetscMemType leafmtype, const void *leafdata, MPI_Op op, Petsc… in PetscSFLinkCreate_NVSHMEM() argument
776 …link->leafbuf[PETSCSF_REMOTE][PETSC_MEMTYPE_DEVICE] = (char *)leafdata + sf->leafstart[PETSCSF_REM… in PetscSFLinkCreate_NVSHMEM()
785 link->leafdata = leafdata; in PetscSFLinkCreate_NVSHMEM()
/petsc/src/vec/vec/utils/
H A Dvscat.c887 PetscInt inedges=0,*leafdata,*rootdata; in VecScatterCreate()
895 PetscCall(PetscMalloc2(nleaves,&iremote,nleaves*2,&leafdata)); in VecScatterCreate()
899 leafdata[2*i] = yindices[i]; in VecScatterCreate()
900 leafdata[2*i+1] = (xcommsize > 1)? xindices[i] : xindices[i] + xstart; in VecScatterCreate()
911 PetscCall(PetscSFGatherBegin(tmpsf,MPIU_2INT,leafdata,rootdata)); in VecScatterCreate()
912 PetscCall(PetscSFGatherEnd(tmpsf,MPIU_2INT,leafdata,rootdata)); in VecScatterCreate()
914 PetscCall(PetscFree2(iremote,leafdata)); in VecScatterCreate()
/petsc/src/vec/is/sf/impls/basic/cupm/
H A Dsfcupm_impl.hpp131 …eafstart, const PetscInt *leafopt, const PetscInt *leafidx, const Type *leafdata, Type *leafupdate) in d_FetchAndOpLocal() argument
139 for (PetscInt i = 0; i < MBS; i++) leafupdate[l + i] = op(rootdata[r + i], leafdata[l + i]); in d_FetchAndOpLocal()
377 …leafstart, PetscSFPackOpt leafopt, const PetscInt *leafidx, const void *leafdata, void *leafupdate… in FetchAndOpLocal() argument
384 …y, rootidx, (Type *)rootdata, leafstart, larray, leafidx, (const Type *)leafdata, (Type *)leafupda… in FetchAndOpLocal()
/petsc/src/vec/is/sf/impls/basic/kokkos/
H A Dsfkok.kokkos.cxx386 const Type *leafdata = static_cast<const Type *>(leafdata_); in FetchAndOpLocal() local
394 for (int i = 0; i < MBS; i++) leafupdate[l + i] = op(rootdata[r + i], leafdata[l + i]); in FetchAndOpLocal()
/petsc/doc/changes/
H A D312.md114 - PetscSF is now CUDA-aware. The rootdata, leafdata arguments passed

12