Lines Matching refs:rootdata
1391 `PetscSF` communicates between `rootdata` and `leafdata` arrays. `rootdata` is distributed across t…
1404 MPI processes). All these matching ghost values share a common root value in `rootdata`.
1414 // the number of entries in rootdata on this MPI process
1416 // provide the matching location in rootdata for each entry in leafdata
1441 Next we fill `rootdata`:
1444 PetscInt *rootdata, *leafdata;
1447 rootdata[0] = 1;
1448 rootdata[1] = 2;
1450 rootdata[0] = 3;
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);
1463 It is also possible to move `leafdata` to `rootdata` using
1466 PetscSFReduceBegin(sf, MPIU_INT, leafdata, rootdata, MPIU_SUM);
1467 PetscSFReduceEnd(sf, MPIU_INT, leafdata, rootdata, MPIU_SUM);
1470 …t of `PetscSFReduceBegin()`), is `MPIU_SUM` the final result in each entry of `rootdata` is the sum
1471 of the previous value at that location plus all the values it that entries leafs. So `rootdata` on …
1507 `rootdata` and `leafdata` can live either on CPU memory or GPU memory. The `PetscSF` routines autom…
1520 Here `multirootdata` is (generally) an array larger than `rootdata` that has enough locations to st…