| /petsc/src/sys/utils/ |
| H A D | mpits.c | 73 …Ibarrier(MPI_Comm comm, PetscMPIInt count, MPI_Datatype dtype, PetscMPIInt nto, const PetscMPIInt … in PetscCommBuildTwoSided_Ibarrier() argument 87 PetscCall(PetscMalloc1(nto, &sendreqs)); in PetscCommBuildTwoSided_Ibarrier() 88 …for (i = 0; i < nto; i++) PetscCallMPI(MPI_Issend((void *)(tdata + count * unitbytes * i), count, … in PetscCommBuildTwoSided_Ibarrier() 112 PetscCall(PetscMPIIntCast(nto, &nsends)); in PetscCommBuildTwoSided_Ibarrier() 133 …llreduce(MPI_Comm comm, PetscMPIInt count, MPI_Datatype dtype, PetscMPIInt nto, const PetscMPIInt … in PetscCommBuildTwoSided_Allreduce() argument 155 for (i = 0; i < nto; i++) iflags[toranks[i]] = 1; in PetscCommBuildTwoSided_Allreduce() 162 PetscCall(PetscMalloc2(nto + nrecvs, &reqs, nto + nrecvs, &statuses)); in PetscCommBuildTwoSided_Allreduce() 165 …for (i = 0; i < nto; i++) PetscCallMPI(MPIU_Isend((void *)(tdata + count * unitbytes * i), count, … in PetscCommBuildTwoSided_Allreduce() 166 PetscCallMPI(MPI_Waitall(nto + nrecvs, reqs, statuses)); in PetscCommBuildTwoSided_Allreduce() 179 …dScatter(MPI_Comm comm, PetscMPIInt count, MPI_Datatype dtype, PetscMPIInt nto, const PetscMPIInt … in PetscCommBuildTwoSided_RedScatter() argument [all …]
|
| /petsc/src/sys/tests/ |
| H A D | ex8.c | 44 PetscMPIInt nto; member 80 PetscMPIInt rank, size, *toranks, *fromranks, nto, nfrom; in main() local 96 for (i = 1, nto = 0; i < size; i *= 2) nto++; in main() 97 PetscCall(PetscMalloc2(nto, &todata, nto, &toranks)); in main() 107 …for (i = 0; i < nto; i++) PetscCall(PetscSynchronizedPrintf(PETSC_COMM_WORLD, "[%d] TO %d: {%" Pet… in main() 117 fctx.nto = nto; in main() 121 PetscCall(PetscMalloc1(nto, &todummy)); in main() 122 for (i = 0; i < nto; i++) todummy[i] = rank; in main() 123 …PetscCall(PetscCommBuildTwoSidedF(PETSC_COMM_WORLD, 1, MPI_INT, nto, toranks, todummy, &nfrom, &fr… in main() 129 …PetscCall(PetscCommBuildTwoSided(PETSC_COMM_WORLD, 1, dtype, nto, toranks, todata, &nfrom, &fromra… in main() [all …]
|
| /petsc/src/vec/is/is/utils/ |
| H A D | iscoloring.c | 411 PetscMPIInt *toranks, *fromranks, size, target_rank, *fromperm_newtoold, nto, nfrom; in ISBuildTwoSided() local 430 nto = 0; in ISBuildTwoSided() 433 if (tosizes_tmp[i] > 0) nto++; in ISBuildTwoSided() 435 PetscCall(PetscCalloc2(nto, &toranks, 2 * nto, &tosizes)); in ISBuildTwoSided() 436 nto = 0; in ISBuildTwoSided() 439 toranks[nto] = i; in ISBuildTwoSided() 440 tosizes[2 * nto] = tosizes_tmp[i]; /* size */ in ISBuildTwoSided() 441 tosizes[2 * nto + 1] = tooffsets_tmp[i]; /* offset */ in ISBuildTwoSided() 442 nto++; in ISBuildTwoSided() 457 …PetscCall(PetscCommBuildTwoSided(comm, 2, MPIU_INT, nto, toranks, tosizes, &nfrom, &fromranks, &fr… in ISBuildTwoSided()
|
| /petsc/src/mat/impls/aij/mpi/ |
| H A D | mpiov.c | 96 PetscMPIInt rank, size, *toranks, *fromranks, nto, nfrom, owner, *rrow_ranks; in MatIncreaseOverlap_MPIAIJ_Once_Scalable() local 151 nto = 0; in MatIncreaseOverlap_MPIAIJ_Once_Scalable() 155 tosizes[nto * 2] = tosizes_temp[i] * 2; /* size */ in MatIncreaseOverlap_MPIAIJ_Once_Scalable() 156 tosizes_temp[i] = nto; /* a map from processor to index */ in MatIncreaseOverlap_MPIAIJ_Once_Scalable() 157 toranks[nto++] = i; /* MPI process */ in MatIncreaseOverlap_MPIAIJ_Once_Scalable() 160 PetscCall(PetscMalloc1(nto + 1, &toffsets)); in MatIncreaseOverlap_MPIAIJ_Once_Scalable() 162 for (PetscInt i = 0; i < nto; i++) { in MatIncreaseOverlap_MPIAIJ_Once_Scalable() 167 …PetscCall(PetscCommBuildTwoSided(comm, 2, MPIU_INT, nto, toranks, tosizes, &nfrom, &fromranks, &fr… in MatIncreaseOverlap_MPIAIJ_Once_Scalable() 201 …PetscCall(PetscCommBuildTwoSided(comm, 2, MPIU_INT, nfrom, fromranks, sbsizes, &nto, &toranks, &to… in MatIncreaseOverlap_MPIAIJ_Once_Scalable() 204 for (PetscInt i = 0; i < nto; i++) nrecvrows += tosizes[2 * i]; in MatIncreaseOverlap_MPIAIJ_Once_Scalable() [all …]
|