| /petsc/src/vec/is/sf/impls/window/ |
| H A D | sfwindow.c | 74 PetscMPIInt nranks; in PetscSFWindowGetDataTypes() local 91 PetscCall(PetscSFGetRootRanks(sf, &nranks, NULL, &roffset, NULL, NULL)); in PetscSFWindowGetDataTypes() 94 PetscCall(PetscMalloc2(nranks, &link->mine, nranks, &link->remote)); in PetscSFWindowGetDataTypes() 95 for (PetscMPIInt i = 0; i < nranks; i++) { in PetscSFWindowGetDataTypes() 363 PetscCall(PetscMalloc1(sf->nranks, &remotes)); in PetscSFWindowCreateDynamicSF() 364 for (PetscInt i = 0; i < sf->nranks; i++) { in PetscSFWindowCreateDynamicSF() 370 …PetscCall(PetscSFSetGraph(*dynsf, 1, sf->nranks, NULL, PETSC_OWN_POINTER, remotes, PETSC_OWN_POINT… in PetscSFWindowCreateDynamicSF() 383 PetscMPIInt nranks; in PetscSFWindowAttach() local 389 PetscCall(PetscSFGetRootRanks(w->dynsf, &nranks, NULL, NULL, NULL, NULL)); in PetscSFWindowAttach() 391 if (!link->dyn_target_addr) PetscCall(PetscMalloc1(nranks, &link->dyn_target_addr)); in PetscSFWindowAttach() [all …]
|
| /petsc/src/dm/impls/plex/ |
| H A D | plexcheckinterface.c | 75 PetscMPIInt nranks; in SortByRemote_Private() local 81 PetscCall(PetscSFGetRootRanks(sf, &nranks, &ranks, &roffset, &rmine, &rremote)); in SortByRemote_Private() 82 nleaves = roffset[nranks]; in SortByRemote_Private() 84 for (PetscMPIInt r = 0; r < nranks; r++) { in SortByRemote_Private() 99 PetscMPIInt nranks; in GetRecursiveConeCoordinatesPerRank_Private() local 106 PetscCall(PetscSFGetRootRanks(sf, &nranks, &ranks, &roffset, NULL, NULL)); in GetRecursiveConeCoordinatesPerRank_Private() 107 PetscCall(PetscMalloc1(nranks, coordinatesPerRank)); in GetRecursiveConeCoordinatesPerRank_Private() 108 for (PetscMPIInt r = 0; r < nranks; r++) { in GetRecursiveConeCoordinatesPerRank_Private() 170 PetscMPIInt nranks; in DMPlexCheckInterfaceCones() local 202 PetscCall(PetscSFGetRootRanks(sf, &nranks, &ranks, &roffset, &rmine, &rremote)); in DMPlexCheckInterfaceCones() [all …]
|
| H A D | plexdistribute.c | 352 const PetscInt *nranks; in DMPlexCreateTwoSidedProcessSF() local 370 PetscCall(ISGetIndices(rootRanks, &nranks)); in DMPlexCreateTwoSidedProcessSF() 376 for (n = 0; n < ndof; ++n) PetscCall(PetscBTSet(neighbors, nranks[noff + n])); in DMPlexCreateTwoSidedProcessSF() 378 PetscCall(ISRestoreIndices(rootRanks, &nranks)); in DMPlexCreateTwoSidedProcessSF() 381 PetscCall(ISGetIndices(leafRanks, &nranks)); in DMPlexCreateTwoSidedProcessSF() 387 for (n = 0; n < ndof; ++n) PetscCall(PetscBTSet(neighbors, nranks[noff + n])); in DMPlexCreateTwoSidedProcessSF() 389 PetscCall(ISRestoreIndices(leafRanks, &nranks)); in DMPlexCreateTwoSidedProcessSF() 1880 PetscInt pStart, pEnd, proc, npoints, poff = 0, nranks; in DMPlexDistribute() local 1890 PetscCall(PetscHSetIGetSize(ht, &nranks)); in DMPlexDistribute() 1891 PetscCall(PetscMalloc1(nranks, &iranks)); in DMPlexDistribute() [all …]
|
| H A D | plexinterpolate.c | 777 PetscMPIInt nranks; in SortRmineRremoteByRemote_Private() local 783 PetscCall(PetscSFGetRootRanks(sf, &nranks, &ranks, &roffset, &rmine, &rremote)); in SortRmineRremoteByRemote_Private() 784 nleaves = roffset[nranks]; in SortRmineRremoteByRemote_Private() 786 for (PetscMPIInt r = 0; r < nranks; r++) { in SortRmineRremoteByRemote_Private() 807 PetscMPIInt nranks, r; in DMPlexOrientInterface_Internal() local 877 PetscCall(PetscSFGetRootRanks(sf, &nranks, &ranks, &roffset, NULL, NULL)); in DMPlexOrientInterface_Internal() 902 PetscCall(PetscFindMPIInt(leavesRanks[p][c], nranks, ranks, &ir)); in DMPlexOrientInterface_Internal()
|
| /petsc/src/vec/is/sf/interface/ |
| H A D | sf.c | 68 b->nranks = -1; in PetscSFCreate() 127 sf->nranks = -1; in PetscSFReset() 627 sf->nranks = size; in PetscSFSetGraphWithPattern() 633 sf->nranks = rank ? 0 : size; in PetscSFSetGraphWithPattern() 639 sf->nranks = size; in PetscSFSetGraphWithPattern() 909 …t_FMT ", leaves=%" PetscInt_FMT ", remote ranks=%d\n", rank, sf->nroots, sf->nleaves, sf->nranks)); in PetscSFView() 916 PetscCall(PetscMalloc2(sf->nranks, &tmpranks, sf->nranks, &perm)); in PetscSFView() 917 PetscCall(PetscArraycpy(tmpranks, sf->ranks, sf->nranks)); in PetscSFView() 918 for (PetscMPIInt i = 0; i < sf->nranks; i++) perm[i] = i; in PetscSFView() 919 PetscCall(PetscSortMPIIntWithArray(sf->nranks, tmpranks, perm)); in PetscSFView() [all …]
|
| /petsc/src/vec/is/sf/interface/ftn-custom/ |
| H A D | zsf.c | 69 PETSC_EXTERN void petscsfgetrootranks_(PetscSF *sf, PetscMPIInt *nranks, F90Array1d *aranks, F90Arr… in petscsfgetrootranks_() argument 76 *ierr = PetscSFGetRootRanks(*sf, nranks, &ranks, &roffset, &rmine, &rremote); in petscsfgetrootranks_() 78 *ierr = F90Array1dCreate((void *)ranks, MPI_INT, 1, *nranks, aranks PETSC_F90_2PTR_PARAM(pranks)); in petscsfgetrootranks_() 80 …*ierr = F90Array1dCreate((void *)roffset, MPIU_INT, 1, *nranks + 1, aroffset PETSC_F90_2PTR_PARAM(… in petscsfgetrootranks_() 82 …*ierr = F90Array1dCreate((void *)rmine, MPIU_INT, 1, roffset[*nranks], armine PETSC_F90_2PTR_PARAM… in petscsfgetrootranks_() 84 …*ierr = F90Array1dCreate((void *)rremote, MPIU_INT, 1, roffset[*nranks], arremote PETSC_F90_2PTR_P… in petscsfgetrootranks_()
|
| /petsc/src/dm/impls/plex/tests/ |
| H A D | ex1.c | 182 PetscInt nranks; in CreateMesh() local 189 PetscCall(DMGetNeighbors(distributedMesh, &nranks, NULL)); in CreateMesh() 190 …PetscCallMPI(MPIU_Allreduce(MPI_IN_PLACE, &nranks, 1, MPIU_INT, MPI_MIN, PetscObjectComm((PetscObj… in CreateMesh() 191 …_(PetscObjectComm((PetscObject)*dm)), "Minimum number of neighbors: %" PetscInt_FMT "\n", nranks)); in CreateMesh()
|
| /petsc/src/vec/vec/utils/ |
| H A D | vscat.c | 161 for (i = 0; i < sf->roffset[sf->nranks]; i++) sf->rremote[i] = PETSC_INT_MIN; in VecScatterRemap_Internal() 198 PetscMPIInt nranks, remote_start; in VecScatterGetRemoteCount_Private() local 212 if (send) PetscCall(PetscSFGetLeafRanks(sf, &nranks, &ranks, &offset, NULL)); in VecScatterGetRemoteCount_Private() 213 else PetscCall(PetscSFGetRootRanks(sf, &nranks, &ranks, &offset, NULL, NULL)); in VecScatterGetRemoteCount_Private() 214 if (nranks) { in VecScatterGetRemoteCount_Private() 216 if (num_procs) *num_procs = nranks - remote_start; in VecScatterGetRemoteCount_Private() 217 if (num_entries) *num_entries = offset[nranks] - offset[remote_start]; in VecScatterGetRemoteCount_Private() 246 PetscMPIInt nranks, remote_start; in VecScatterGetRemote_Private() local 255 if (send) PetscCall(PetscSFGetLeafRanks(sf, &nranks, &ranks, &offset, &location)); in VecScatterGetRemote_Private() 256 else PetscCall(PetscSFGetRootRanks(sf, &nranks, &ranks, &offset, &location, NULL)); in VecScatterGetRemote_Private() [all …]
|
| /petsc/src/vec/is/sf/tutorials/ |
| H A D | ex1f.F90 | 23 PetscMPIInt niranks, nranks 115 PetscCallA(PetscSFGetRootRanks(sf, nranks, ranks, roffset, rmine, rremote, ierr))
|
| H A D | ex1.c | 22 PetscMPIInt rank, nranks; in PetscSFViewCustomLocals_Private() local 27 PetscCall(PetscSFGetRootRanks(sf, &nranks, NULL, NULL, NULL, NULL)); in PetscSFViewCustomLocals_Private() 30 …s=%" PetscInt_FMT ", leaves=%" PetscInt_FMT ", remote ranks=%d\n", rank, nroots, nleaves, nranks)); in PetscSFViewCustomLocals_Private()
|
| /petsc/src/vec/is/sf/impls/basic/allgatherv/ |
| H A D | sfallgatherv.c | 329 PETSC_INTERN PetscErrorCode PetscSFGetRootRanks_Allgatherv(PetscSF sf, PetscMPIInt *nranks, const P… in PetscSFGetRootRanks_Allgatherv() argument 336 …if (sf->nranks && !sf->ranks) { /* On rank!=0, sf->nranks=0. The sf->nranks test makes this routin… in PetscSFGetRootRanks_Allgatherv() 337 size = sf->nranks; in PetscSFGetRootRanks_Allgatherv() 348 if (nranks) *nranks = sf->nranks; in PetscSFGetRootRanks_Allgatherv()
|
| /petsc/src/vec/is/sf/impls/basic/ |
| H A D | sfbasic.c | 199 PetscCall(PetscMalloc1(sf->nranks, &rlengths)); in PetscSFSetUp_Basic() 201 …for (PetscMPIInt i = 0; i < sf->nranks; i++) rlengths[i] = sf->roffset[i + 1] - sf->roffset[i]; /*… in PetscSFSetUp_Basic() 202 nRemoteRootRanks = sf->nranks - sf->ndranks; in PetscSFSetUp_Basic() 235 for (PetscMPIInt i = 0; i < sf->nranks; i++) { in PetscSFSetUp_Basic() 471 PetscMPIInt *esf_ranks, nranks, ndranks, niranks, esf_nranks, esf_ndranks, ndiranks; in PetscSFCreateEmbeddedRootSF_Basic() local 494 …PetscCall(PetscSFGetLeafInfo_Basic(sf, &nranks, &ndranks, &ranks, &roffset, &rmine, &rremote)); /*… in PetscSFCreateEmbeddedRootSF_Basic() 496 for (PetscMPIInt i = 0; i < nranks; i++) { in PetscSFCreateEmbeddedRootSF_Basic() 517 for (PetscMPIInt i = 0; i < nranks; i++) { /* Scan leaf data again to fill esf arrays */ in PetscSFCreateEmbeddedRootSF_Basic() 538 esf->nranks = esf_nranks; in PetscSFCreateEmbeddedRootSF_Basic()
|
| H A D | sfbasic.h | 56 if (nleafranks) *nleafranks = sf->nranks; in PetscSFGetLeafInfo_Basic()
|
| H A D | sfpack.c | 1297 sf->leafbuflen[1] = sf->roffset[sf->nranks] - sf->roffset[sf->ndranks]; in PetscSFSetUpPackFields() 1309 for (i = sf->roffset[sf->ndranks], j = 0; i < sf->roffset[sf->nranks]; i++, j++) { /* remote */ in PetscSFSetUpPackFields() 1318 …if (!sf->leafcontig[1]) PetscCall(PetscSFCreatePackOpt(sf->nranks - sf->ndranks, sf->roffset + sf-… in PetscSFSetUpPackFields()
|
| /petsc/src/mat/impls/aij/mpi/kokkos/ |
| H A D | mpiaijkok.kokkos.cxx | 385 PetscMPIInt niranks, nranks; in MatMPIAIJKokkosReduceBegin() local 393 …PetscCall(PetscSFGetRootRanks(ownerSF, &nranks, &ranks, &roffset, &rmine, NULL)); // get root rank… in MatMPIAIJKokkosReduceBegin() 397 PetscInt sendRowCnt = roffset[nranks], recvRowCnt = ioffset[niranks]; in MatMPIAIJKokkosReduceBegin() 400 …(sendRowCnt, &sendRowLen, recvRowCnt + 1, &recvRowLen, nranks, &sdisp, niranks + 1, &rdisp, nranks… in MatMPIAIJKokkosReduceBegin() 405 …wLen[ioffset[i]], ioffset[i + 1] - ioffset[i], MPIU_INT, iranks[i], tag, comm, &reqs[nranks + i])); in MatMPIAIJKokkosReduceBegin() 406 …for (PetscInt i = 0; i < nranks; i++) PetscCallMPI(MPIU_Isend(&sendRowLen[roffset[i]], roffset[i +… in MatMPIAIJKokkosReduceBegin() 407 PetscCallMPI(MPI_Waitall(nranks + niranks, reqs, MPI_STATUSES_IGNORE)); in MatMPIAIJKokkosReduceBegin() 418 …for (PetscInt i = 0; i < nranks; i++) PetscCallMPI(MPIU_Irecv(&sdisp[i], 1, MPIU_INT, ranks[i], ta… in MatMPIAIJKokkosReduceBegin() 419 …ks; i++) PetscCallMPI(MPIU_Isend(&rdisp[i], 1, MPIU_INT, iranks[i], tag, comm, &reqs[nranks + i])); in MatMPIAIJKokkosReduceBegin() 420 PetscCallMPI(MPI_Waitall(nranks + niranks, reqs, MPI_STATUSES_IGNORE)); in MatMPIAIJKokkosReduceBegin() [all …]
|
| /petsc/src/ksp/pc/impls/amgx/ |
| H A D | amgx.cxx | 126 PetscMPIInt nranks = 0; member 227 if (amgx->nranks > 1) { in PCSetUp_AMGX() 278 std::vector<PetscInt> partitionOffsets(amgx->nranks + 1); in PCSetUp_AMGX() 286 amgx->nGlobalRows = partitionOffsets[amgx->nranks]; in PCSetUp_AMGX() 379 if (amgx->nranks > 1) PetscCall(MatDestroy(&amgx->localA)); in PCReset_AMGX() 626 PetscCallMPI(MPI_Comm_size(amgx->comm, &amgx->nranks)); in PCCreate_AMGX()
|
| /petsc/src/vec/is/sf/impls/basic/alltoall/ |
| H A D | sfalltoall.c | 141 esf->nranks = nleaves; in PetscSFCreateEmbeddedRootSF_Alltoall() 178 esf->nleafreqs = esf->nranks - esf->ndranks; in PetscSFCreateEmbeddedRootSF_Alltoall()
|
| /petsc/include/ |
| H A D | petscsf.h | 203 static inline PetscErrorCode PetscSFGetRanks(PetscSF sf, PetscMPIInt *nranks, const PetscMPIInt *ra… in PetscSFGetRanks() argument 205 return PetscSFGetRootRanks(sf, nranks, ranks, roffset, rmine, rremote); in PetscSFGetRanks()
|
| /petsc/src/mat/impls/adj/mpi/ |
| H A D | mpiadj.c | 755 PetscMPIInt i, size, nranks, *ranks; in MatMPIAdjCreateNonemptySubcommMat_MPIAdj() local 762 for (i = 0, nranks = 0; i < size; i++) { in MatMPIAdjCreateNonemptySubcommMat_MPIAdj() 763 if (ranges[i + 1] - ranges[i] > 0) nranks++; in MatMPIAdjCreateNonemptySubcommMat_MPIAdj() 765 …if (nranks == size) { /* All ranks have a positive number of rows, so we do not need to create a s… in MatMPIAdjCreateNonemptySubcommMat_MPIAdj() 771 PetscCall(PetscMalloc1(nranks, &ranks)); in MatMPIAdjCreateNonemptySubcommMat_MPIAdj() 772 for (i = 0, nranks = 0; i < size; i++) { in MatMPIAdjCreateNonemptySubcommMat_MPIAdj() 773 if (ranges[i + 1] - ranges[i] > 0) ranks[nranks++] = i; in MatMPIAdjCreateNonemptySubcommMat_MPIAdj() 776 PetscCallMPI(MPI_Group_incl(agroup, nranks, ranks, &bgroup)); in MatMPIAdjCreateNonemptySubcommMat_MPIAdj()
|
| /petsc/src/dm/impls/da/ |
| H A D | dacreate.c | 286 static PetscErrorCode DMGetNeighbors_DA(DM dm, PetscInt *nranks, const PetscMPIInt *ranks[]) in DMGetNeighbors_DA() argument 297 *nranks = 3; in DMGetNeighbors_DA() 301 *nranks = 9; in DMGetNeighbors_DA() 305 *nranks = 27; in DMGetNeighbors_DA()
|
| /petsc/src/vec/is/sf/tests/ |
| H A D | ex1.c | 46 PetscCheck(sf->nranks == -1, PETSC_COMM_SELF, PETSC_ERR_PLIB, "SF ranks are set"); in CheckRanksNotSet() 54 PetscCheck(sf->nranks == 0, PETSC_COMM_SELF, PETSC_ERR_PLIB, "SF ranks not empty"); in CheckRanksEmpty()
|
| H A D | ex18.c | 95 PetscMPIInt rank, nranks; in PetscSFViewCustom() local 105 PetscCall(PetscSFGetRootRanks(sf, &nranks, NULL, NULL, NULL, NULL)); in PetscSFViewCustom()
|
| /petsc/src/vec/is/sf/utils/ |
| H A D | sfutils.c | 934 PetscInt nranks, nr, nl, vnr, vnl, maxl; in PetscSFCreateStridedSF() local 967 PetscCall(PetscSFGetGraph(rankssf, NULL, &nranks, NULL, &sfrremote)); in PetscSFCreateStridedSF() 968 PetscCall(PetscMalloc1(nranks, &ldrs)); in PetscSFCreateStridedSF() 980 for (j = 0; j < nranks; j++) in PetscSFCreateStridedSF() 982 …PetscCheck(j < nranks, PETSC_COMM_SELF, PETSC_ERR_PLIB, "Unable to locate neighbor rank %" PetscIn… in PetscSFCreateStridedSF()
|
| /petsc/src/dm/impls/plex/cgns/ |
| H A D | plexcgns2.c | 1165 PetscMPIInt myrank, nranks; in DMPlexCGNS_MatchCGNSFacesToPlexFaces() local 1170 PetscCallMPI(MPI_Comm_size(comm, &nranks)); in DMPlexCGNS_MatchCGNSFacesToPlexFaces() 1206 PetscCall(PetscCalloc1(nranks, &local_rank_count)); in DMPlexCGNS_MatchCGNSFacesToPlexFaces() 1308 PetscCall(PetscCalloc2(nranks, &rank_start, nranks, &rank_offset)); in DMPlexCGNS_MatchCGNSFacesToPlexFaces() 1309 PetscCallMPI(MPIU_Allreduce(local_rank_count, rank_start, nranks, MPIU_INT, MPI_SUM, comm)); in DMPlexCGNS_MatchCGNSFacesToPlexFaces() 1311 PetscCall(PetscArrayzero(rank_start, nranks)); in DMPlexCGNS_MatchCGNSFacesToPlexFaces() 1312 PetscCallMPI(MPI_Exscan(local_rank_count, rank_start, nranks, MPIU_INT, MPI_SUM, comm)); in DMPlexCGNS_MatchCGNSFacesToPlexFaces()
|
| /petsc/include/petsc/private/ |
| H A D | sfimpl.h | 74 PetscMPIInt nranks; /* Number of ranks owning roots connected to my leaves */ member
|