Home
last modified time | relevance | path

Searched refs:tpwgts (Results 1 – 7 of 7) sorted by relevance

/petsc/src/dm/partitioner/impls/matpart/
H A Dpartmatpart.c93 PetscReal *tpwgts = NULL; in PetscPartitionerPartition_MatPartitioning() local
124 PetscCall(PetscMalloc1(nparts, &tpwgts)); in PetscPartitionerPartition_MatPartitioning()
130 tpwgts[p] = tpd; in PetscPartitionerPartition_MatPartitioning()
134 tpwgts[p] = PetscMax(tpwgts[p], PETSC_SMALL); in PetscPartitionerPartition_MatPartitioning()
135 sumt += tpwgts[p]; in PetscPartitionerPartition_MatPartitioning()
137 for (p = 0; p < nparts; ++p) tpwgts[p] /= sumt; in PetscPartitionerPartition_MatPartitioning()
138 for (p = 0, sumt = 0.0; p < nparts - 1; ++p) sumt += tpwgts[p]; in PetscPartitionerPartition_MatPartitioning()
139 tpwgts[nparts - 1] = 1. - sumt; in PetscPartitionerPartition_MatPartitioning()
141 PetscCall(PetscFree(tpwgts)); in PetscPartitionerPartition_MatPartitioning()
144 PetscCall(MatPartitioningSetPartitionWeights(p->mp, tpwgts)); in PetscPartitionerPartition_MatPartitioning()
/petsc/src/dm/partitioner/impls/parmetis/
H A Dpartparmetis.c93 …real_t *tpwgts; /* The fraction of vertex weights assigned to … in PetscPartitionerPartition_ParMetis() local
105 …PetscCall(PetscMalloc4(size + 1, &vtxdist, nparts * ncon, &tpwgts, ncon, &ubvec, nvtxs, &assignmen… in PetscPartitionerPartition_ParMetis()
114 PetscCall(PetscFree4(vtxdist, tpwgts, ubvec, assignment)); in PetscPartitionerPartition_ParMetis()
128 tpwgts[p] = tpd; in PetscPartitionerPartition_ParMetis()
132 tpwgts[p] = (real_t)PetscMax(tpwgts[p], PETSC_SMALL); in PetscPartitionerPartition_ParMetis()
133 sumt += tpwgts[p]; in PetscPartitionerPartition_ParMetis()
135 for (p = 0; p < nparts; ++p) tpwgts[p] /= sumt; in PetscPartitionerPartition_ParMetis()
136 for (p = 0, sumt = 0.0; p < nparts - 1; ++p) sumt += tpwgts[p]; in PetscPartitionerPartition_ParMetis()
137 tpwgts[nparts - 1] = (real_t)(1. - sumt); in PetscPartitionerPartition_ParMetis()
140 for (p = 0; p < nparts; ++p) tpwgts[p] = (real_t)(1.0 / nparts); in PetscPartitionerPartition_ParMetis()
[all …]
/petsc/src/dm/partitioner/impls/simple/
H A Dpartsimple.c121 PetscInt np, *tpwgts = NULL, sumw = 0, numVerticesGlobal = 0; in PetscPartitionerPartition_Simple() local
134 PetscCall(PetscCalloc1(nparts, &tpwgts)); in PetscPartitionerPartition_Simple()
136 PetscCall(PetscSectionGetDof(targetSection, np, &tpwgts[np])); in PetscPartitionerPartition_Simple()
137 sumw += tpwgts[np]; in PetscPartitionerPartition_Simple()
141 for (np = 0; np < nparts; ++np) tpwgts[np] = (tpwgts[np] * numVerticesGlobal) / sumw; in PetscPartitionerPartition_Simple()
143 if (m < tpwgts[np]) { in PetscPartitionerPartition_Simple()
144 m = tpwgts[np]; in PetscPartitionerPartition_Simple()
147 sumw += tpwgts[np]; in PetscPartitionerPartition_Simple()
149 if (sumw != numVerticesGlobal) tpwgts[mp] += numVerticesGlobal - sumw; in PetscPartitionerPartition_Simple()
151 if (!sumw) PetscCall(PetscFree(tpwgts)); in PetscPartitionerPartition_Simple()
[all …]
/petsc/src/mat/tests/
H A Dex152.c33 real_t *sxyz, *tpwgts, ubvec[1]; in main() local
82 PetscCall(PetscMalloc3(ni * ndims, &xyz, ni, &part, size, &tpwgts)); in main()
93 for (PetscInt i = 0; i < size; i++) tpwgts[i] = (real_t)(1. / size); in main()
104 …dj, adjncy, vwgt, NULL, &wgtflag, &numflag, &ndims, sxyz, &ncon, &isize, tpwgts, ubvec, options, &… in main()
110 PetscCall(PetscFree3(xyz, part, tpwgts)); in main()
/petsc/src/dm/partitioner/impls/ptscotch/
H A Dpartptscotch.c215 PetscInt *tpwgts = NULL; in PetscPartitionerPartition_PTScotch() local
251 PetscCall(PetscCalloc1(nparts, &tpwgts)); in PetscPartitionerPartition_PTScotch()
253 PetscCall(PetscSectionGetDof(targetSection, p, &tpwgts[p])); in PetscPartitionerPartition_PTScotch()
254 sumw += tpwgts[p]; in PetscPartitionerPartition_PTScotch()
256 if (!sumw) PetscCall(PetscFree(tpwgts)); in PetscPartitionerPartition_PTScotch()
266 …Scotch_PartGraph_Seq(strat, imbal, nvtxs, xadj, adjncy, vwgt, adjwgt, nparts, tpwgts, assignment)); in PetscPartitionerPartition_PTScotch()
281 …PartGraph_MPI(strat, imbal, vtxdist, xadj, adjncy, vwgt, adjwgt, nparts, tpwgts, assignment, pcomm… in PetscPartitionerPartition_PTScotch()
287 PetscCall(PetscFree(tpwgts)); in PetscPartitionerPartition_PTScotch()
/petsc/src/mat/graphops/partition/impls/pmetis/
H A Dpmetis.c70 real_t *tpwgts, *ubvec, itr = (real_t)0.1; in MatPartitioningApply_Parmetis_Private() local
102 PetscCall(PetscMalloc1(ncon * nparts, &tpwgts)); in MatPartitioningApply_Parmetis_Private()
106 tpwgts[i * nparts + j] = (real_t)part->part_weights[i * nparts + j]; in MatPartitioningApply_Parmetis_Private()
108 tpwgts[i * nparts + j] = (real_t)1. / nparts; in MatPartitioningApply_Parmetis_Private()
153 … (idx_t *)&wgtflag, (idx_t *)&numflag, (idx_t *)&ncon, (idx_t *)&nparts, tpwgts, ubvec, &itr, (idx… in MatPartitioningApply_Parmetis_Private()
156 … (idx_t *)&wgtflag, (idx_t *)&numflag, (idx_t *)&ncon, (idx_t *)&nparts, tpwgts, ubvec, (idx_t *)o… in MatPartitioningApply_Parmetis_Private()
159 … (idx_t *)&wgtflag, (idx_t *)&numflag, (idx_t *)&ncon, (idx_t *)&nparts, tpwgts, ubvec, (idx_t *)o… in MatPartitioningApply_Parmetis_Private()
165 PetscCall(PetscFree(tpwgts)); in MatPartitioningApply_Parmetis_Private()
/petsc/src/dm/impls/plex/
H A Dplexpartition.c1692 real_t *tpwgts; in DMPlexRebalanceSharedPoints() local
1821 PetscCall(PetscMalloc1(ncon * nparts, &tpwgts)); in DMPlexRebalanceSharedPoints()
1822 for (i = 0; i < ncon * nparts; i++) tpwgts[i] = (real_t)(1. / (nparts)); in DMPlexRebalanceSharedPoints()
1881 …xadj, (idx_t *)adjncy, vtxwgt, NULL, &wgtflag, &numflag, &ncon, &nparts, tpwgts, ubvec, options, &… in DMPlexRebalanceSharedPoints()
1888 …xadj, (idx_t *)adjncy, vtxwgt, NULL, &wgtflag, &numflag, &ncon, &nparts, tpwgts, ubvec, options, &… in DMPlexRebalanceSharedPoints()
1932 …g, &ncon, (idx_t *)xadj, (idx_t *)adjncy, vtxwgt_g, NULL, NULL, &nparts, tpwgts, ubvec, options, &… in DMPlexRebalanceSharedPoints()
1957 PetscCall(PetscFree(tpwgts)); in DMPlexRebalanceSharedPoints()