
Go to the source code of this file.
| void Moc_Global_Partition | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 181 of file kmetis.c.
References controldef::CoarsenTo, graphdef::coarser, controldef::dbglvl, graphdef::finer, GKfree(), GlobalSEMax(), GlobalSEMaxFloat(), GlobalSEMin(), GlobalSEMinFloat(), GlobalSESum(), graphdef::gnpwgts, graphdef::gnvtxs, idxmalloc(), graphdef::level, graphdef::lnpwgts, graphdef::mincut, Moc_ComputeParallelBalance(), Moc_ComputePartitionParams(), Moc_Global_Partition(), Moc_GlobalMatch_Balance(), Moc_InitPartition_RB(), Moc_KWayBalance(), Moc_KWayFM(), Moc_ProjectPartition(), graphdef::ncon, graphdef::nedges, controldef::nparts, graphdef::nrecv, graphdef::nvtxs, graphdef::nvwgt, rprintf(), samax_strd(), samin_strd(), savg(), SetUp(), ssum_strd(), controldef::ubvec, and graphdef::where.
Referenced by Moc_Global_Partition(), ParMETIS_V3_NodeND(), ParMETIS_V3_PartGeomKway(), and ParMETIS_V3_PartKway().
| void Moc_GlobalMatch_Balance | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 21 of file match.c.
References graphdef::adjncy, graphdef::adjwgt, BetterVBalance(), c, controldef::comm, CommChangedInterfaceData(), CommInterfaceData(), controldef::ContractTmr, controldef::dbglvl, workspacedef::degrees, FastRandomPermute(), GKfree(), GlobalSESum(), graphdef::gnvtxs, graphdef::home, idxsmalloc(), ikeysort(), graphdef::imap, workspacedef::indices, ismalloc(), KeyValueType::key, graphdef::level, graphdef::match, match(), graphdef::match_type, controldef::MatchTmr, maxi(), Moc_Global_CreateCoarseGraph(), MPI_Barrier(), MPI_Get_count(), MPI_Irecv(), MPI_Isend(), MPI_Waitall(), controldef::mype, myprintf(), graphdef::ncon, graphdef::nnbrs, controldef::nparts, controldef::npes, graphdef::nrecv, graphdef::nsend, graphdef::nvtxs, graphdef::nvwgt, workspacedef::pairs, controldef::partType, graphdef::peind, PrintVector2(), workspacedef::pv4, RandomPermute(), graphdef::recvptr, rprintf(), controldef::rreq, graphdef::sendptr, controldef::sreq, controldef::statuses, KeyValueType::val, graphdef::vtxdist, and graphdef::xadj.
Referenced by Adaptive_Partition(), and Moc_Global_Partition().
| void Moc_Global_CreateCoarseGraph | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | , | |||
| int | ||||
| ) |
Definition at line 21 of file coarsen.c.
References graphdef::adjncy, graphdef::adjwgt, BSearch(), graphdef::cmap, graphdef::coarser, controldef::comm, CommInterfaceData(), CreateGraph(), workspacedef::degrees, graphdef::finer, fmalloc(), free(), GKfree(), GKmalloc(), graphdef::gnvtxs, graphdef::home, idxmalloc(), idxset(), idxsmalloc(), idxsum(), ikeyvalsort(), workspacedef::indices, iset(), KeyValueType::key, graphdef::level, graphdef::match, match(), MPI_Allgather(), MPI_Irecv(), MPI_Isend(), MPI_Wait(), controldef::mype, graphdef::ncon, graphdef::nedges, workspacedef::nlarge, graphdef::nnbrs, controldef::npes, graphdef::nrecv, graphdef::nvtxs, graphdef::nvwgt, workspacedef::pairs, controldef::partType, graphdef::peind, PrintPairs(), PrintTransferedGraphs(), PrintVector(), workspacedef::pv1, workspacedef::pv2, graphdef::rcand, graphdef::recvind, graphdef::recvptr, graphdef::rlens, rprintf(), controldef::rreq, graphdef::slens, controldef::sreq, controldef::status, controldef::tvwgts, KeyValueType::val, graphdef::vsize, graphdef::vtxdist, graphdef::vwgt, and graphdef::xadj.
Referenced by Moc_GlobalMatch_Balance().
| void Moc_InitPartition_RB | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 28 of file initpart.c.
References graphdef::adjncy, graphdef::adjwgt, controldef::comm, ComputeSerialEdgeCut(), controldef::dbglvl, FreeGraph(), fsmalloc(), controldef::gcomm, GKfree(), idxmalloc(), idxsmalloc(), controldef::InitPartTmr, graphdef::label, METIS_mCPartGraphRecursive2(), METIS_WPartGraphKway2(), Moc_AssembleAdaptiveGraph(), Moc_ComputeSerialBalance(), Moc_KeepPart(), MPI_Allreduce(), MPI_Barrier(), MPI_Bcast(), MPI_Comm_free(), MPI_Comm_rank(), MPI_Comm_size(), MPI_Comm_split(), MPI_DOUBLE, MPI_DOUBLE_INT, MPI_INT, MPI_MAX, MPI_MIN, MPI_MINLOC, MPI_SUM, controldef::mype, graphdef::ncon, graphdef::nedges, controldef::nparts, controldef::npes, graphdef::nvtxs, sscale(), ssum(), controldef::sync, controldef::tpwgts, graphdef::vtxdist, graphdef::vwgt, graphdef::where, and graphdef::xadj.
Referenced by Moc_Global_Partition().
| void Moc_KeepPart | ( | GraphType * | , | |
| WorkSpaceType * | , | |||
| idxtype * | , | |||
| int | ||||
| ) |
Definition at line 202 of file initpart.c.
References graphdef::adjncy, graphdef::adjwgt, free(), idxmalloc(), graphdef::label, graphdef::ncon, graphdef::nedges, graphdef::nvtxs, graphdef::vwgt, and graphdef::xadj.
Referenced by Balance_Partition(), InitMultisection(), and Moc_InitPartition_RB().
| void Moc_ProjectPartition | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 22 of file kwayrefine.c.
References graphdef::cmap, graphdef::coarser, controldef::comm, controldef::dbglvl, FreeGraph(), idxmalloc(), KeyValueType::key, graphdef::match, match(), graphdef::match_type, MPI_Irecv(), MPI_Isend(), MPI_Wait(), controldef::mype, graphdef::nnbrs, graphdef::nrecv, graphdef::nvtxs, workspacedef::pairs, graphdef::peind, PrintPairs(), PrintVector(), controldef::ProjectTmr, graphdef::rcand, graphdef::rlens, controldef::rreq, graphdef::slens, controldef::sreq, controldef::status, KeyValueType::val, graphdef::vtxdist, and graphdef::where.
Referenced by Adaptive_Partition(), Moc_Global_Partition(), and Order_Partition().
| void Moc_ComputePartitionParams | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 131 of file kwayrefine.c.
References graphdef::adjncy, graphdef::adjwgt, controldef::comm, CommInterfaceData(), controldef::dbglvl, workspacedef::degrees, rinfodef::degrees, rinfodef::ed, edgedef::edge, edgedef::ewgt, fmalloc(), GKmalloc(), GlobalSESum(), graphdef::gnpwgts, rinfodef::id, workspacedef::indices, controldef::KWayInitTmr, graphdef::lmincut, graphdef::lnpwgts, graphdef::mincut, MPI_Allreduce(), MPI_DOUBLE, MPI_SUM, controldef::mype, graphdef::ncon, rinfodef::ndegrees, workspacedef::nlarge, controldef::nparts, graphdef::nvtxs, graphdef::nvwgt, PrintVector(), graphdef::rinfo, sset(), graphdef::vtxdist, graphdef::where, and graphdef::xadj.
Referenced by Adaptive_Partition(), and Moc_Global_Partition().
| void Moc_KWayFM | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | , | |||
| int | ||||
| ) |
Definition at line 22 of file kwayfm.c.
References graphdef::adjncy, graphdef::adjwgt, c, controldef::comm, CommChangedInterfaceData(), controldef::dbglvl, rinfodef::degrees, rinfodef::ed, edgedef::edge, edgedef::ewgt, FastRandomPermute(), fmalloc(), GKfree(), GKmalloc(), GlobalSESum(), graphdef::gnpwgts, rinfodef::id, idxmalloc(), idxsmalloc(), iidxsort(), imalloc(), graphdef::imap, workspacedef::indices, IsHBalanceBetterFT(), IsHBalanceBetterTT(), controldef::KWayTmr, graphdef::level, graphdef::lmincut, graphdef::lnpwgts, graphdef::mincut, Moc_ComputeParallelBalance(), MPI_Allreduce(), MPI_Bcast(), MPI_DOUBLE, MPI_Get_count(), MPI_Irecv(), MPI_Isend(), MPI_SUM, MPI_Waitall(), controldef::mype, graphdef::ncon, rinfodef::ndegrees, graphdef::nedges, graphdef::nnbrs, controldef::nparts, controldef::npes, graphdef::nrecv, graphdef::nvtxs, graphdef::nvwgt, workspacedef::pairs, graphdef::peind, graphdef::pexadj, workspacedef::pv4, RandomPermute(), graphdef::recvptr, graphdef::rinfo, rprintf(), controldef::rreq, savg(), graphdef::sendptr, controldef::sreq, sset(), controldef::statuses, controldef::tpwgts, controldef::ubvec, graphdef::vtxdist, graphdef::where, and graphdef::xadj.
Referenced by Moc_Global_Partition().
| void Moc_KWayBalance | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | , | |||
| int | ||||
| ) |
Definition at line 22 of file kwaybalance.c.
References graphdef::adjncy, graphdef::adjwgt, c, controldef::comm, CommChangedInterfaceData(), controldef::dbglvl, rinfodef::degrees, rinfodef::ed, edgedef::edge, edgedef::ewgt, FastRandomPermute(), fmalloc(), GKfree(), GKmalloc(), GlobalSESum(), graphdef::gnpwgts, rinfodef::id, idxmalloc(), idxsmalloc(), iidxsort(), imalloc(), graphdef::imap, workspacedef::indices, IsHBalanceBetterFT(), IsHBalanceBetterTT(), controldef::KWayTmr, graphdef::lmincut, graphdef::lnpwgts, graphdef::mincut, Moc_ComputeParallelBalance(), MPI_Allreduce(), MPI_Bcast(), MPI_DOUBLE, MPI_Get_count(), MPI_Irecv(), MPI_Isend(), MPI_SUM, MPI_Waitall(), controldef::mype, graphdef::ncon, rinfodef::ndegrees, graphdef::nedges, graphdef::nnbrs, controldef::nparts, controldef::npes, graphdef::nrecv, graphdef::nvtxs, graphdef::nvwgt, workspacedef::pairs, graphdef::peind, graphdef::pexadj, workspacedef::pv4, RandomPermute(), graphdef::recvptr, graphdef::rinfo, rprintf(), controldef::rreq, savg(), graphdef::sendptr, controldef::sreq, controldef::statuses, controldef::tpwgts, controldef::ubvec, graphdef::vtxdist, graphdef::where, and graphdef::xadj.
Referenced by Adaptive_Partition(), and Moc_Global_Partition().
| void ParallelReMapGraph | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 20 of file remap.c.
References controldef::comm, controldef::dbglvl, idxset(), MPI_Barrier(), graphdef::ncon, controldef::nparts, controldef::npes, graphdef::nvtxs, ParallelTotalVReMap(), workspacedef::pv1, workspacedef::pv2, controldef::RemapTmr, graphdef::vsize, and graphdef::where.
Referenced by ParMETIS_V3_AdaptiveRepart(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), and ParMETIS_V3_RefineKway().
Definition at line 58 of file remap.c.
References controldef::comm, controldef::dbglvl, done, GKfree(), GKmalloc(), GlobalSESum(), idxamax(), idxmalloc(), idxset(), ikeysort(), KeyValueType::key, MPI_Allgather(), controldef::mype, controldef::nparts, workspacedef::pv3, rprintf(), SimilarTpwgts(), controldef::tpwgts, and KeyValueType::val.
Referenced by ParallelReMapGraph().
| GraphType* Moc_MoveGraph | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 22 of file move.c.
References graphdef::adjncy, graphdef::adjwgt, CheckMGraph(), controldef::comm, CommInterfaceData(), workspacedef::core, CreateGraph(), controldef::dbglvl, free(), graphdef::gnvtxs, idxmalloc(), workspacedef::indices, KeyValueType::key, graphdef::level, workspacedef::maxcore, MPI_Allreduce(), MPI_Alltoall(), MPI_Irecv(), MPI_Isend(), MPI_Scan(), MPI_SUM, MPI_Wait(), graphdef::ncon, graphdef::nedges, controldef::nparts, controldef::npes, graphdef::nrecv, graphdef::nvtxs, workspacedef::pepairs1, workspacedef::pepairs2, workspacedef::pv1, workspacedef::pv2, rprintf(), controldef::rreq, controldef::sreq, controldef::status, KeyValueType::val, graphdef::vtxdist, graphdef::vwgt, graphdef::where, and graphdef::xadj.
Referenced by MultilevelOrder(), ParMETIS_V3_NodeND(), and ParMETIS_V3_PartGeomKway().
Definition at line 307 of file move.c.
References graphdef::adjncy, controldef::mype, myprintf(), graphdef::nvtxs, graphdef::vtxdist, and graphdef::xadj.
Referenced by Moc_MoveGraph().
| void ProjectInfoBack | ( | CtrlType * | , | |
| GraphType * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 197 of file move.c.
References controldef::comm, free(), idxmalloc(), idxset(), MPI_Alltoall(), MPI_Irecv(), MPI_Isend(), MPI_Wait(), controldef::npes, graphdef::nvtxs, workspacedef::pv1, workspacedef::pv2, controldef::rreq, controldef::sreq, controldef::status, and graphdef::where.
Referenced by MultilevelOrder(), ParMETIS_V3_NodeND(), and ParMETIS_V3_PartGeomKway().
| void FindVtxPerm | ( | CtrlType * | , | |
| GraphType * | , | |||
| idxtype * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 261 of file move.c.
References graphdef::adjncy, graphdef::adjwgt, controldef::comm, free(), idxmalloc(), idxset(), MPI_Allreduce(), MPI_Scan(), MPI_SUM, controldef::nparts, graphdef::nvtxs, workspacedef::pv1, workspacedef::pv2, graphdef::where, and graphdef::xadj.
| void PreAllocateMemory | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 21 of file memory.c.
References workspacedef::core, workspacedef::degrees, GKmalloc(), idxmalloc(), workspacedef::indices, workspacedef::maxcore, graphdef::nedges, workspacedef::nlarge, controldef::nparts, controldef::npes, workspacedef::pairs, workspacedef::pepairs1, workspacedef::pepairs2, workspacedef::pv1, workspacedef::pv2, workspacedef::pv3, and workspacedef::pv4.
Referenced by ParMETIS_V3_AdaptiveRepart(), ParMETIS_V3_NodeND(), ParMETIS_V3_PartGeom(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), and ParMETIS_V3_RefineKway().
| void FreeWSpace | ( | WorkSpaceType * | ) |
Definition at line 47 of file memory.c.
References workspacedef::core, GKfree(), workspacedef::pepairs1, workspacedef::pepairs2, workspacedef::pv1, workspacedef::pv2, workspacedef::pv3, and workspacedef::pv4.
Referenced by ParMETIS_V3_AdaptiveRepart(), ParMETIS_V3_NodeND(), ParMETIS_V3_PartGeom(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), and ParMETIS_V3_RefineKway().
| void FreeCtrl | ( | CtrlType * | ) |
Definition at line 64 of file memory.c.
References controldef::gcomm, and MPI_Comm_free().
Referenced by ParMETIS_SerialNodeND(), ParMETIS_V3_AdaptiveRepart(), ParMETIS_V3_Mesh2Dual(), ParMETIS_V3_NodeND(), ParMETIS_V3_PartGeom(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), ParMETIS_V3_PartMeshKway(), and ParMETIS_V3_RefineKway().
| GraphType* CreateGraph | ( | void | ) |
Definition at line 156 of file memory.c.
References GKmalloc(), and InitGraph().
Referenced by AssembleEntireGraph(), AssembleMultisectedGraph(), ExtractGraph(), Mc_Local_CreateCoarseGraph(), Moc_AssembleAdaptiveGraph(), Moc_Global_CreateCoarseGraph(), Moc_MoveGraph(), Moc_SetUpGraph(), and SetUpCoarseGraph().
| void InitGraph | ( | GraphType * | ) |
Definition at line 172 of file memory.c.
References graphdef::adjncy, graphdef::adjwgt, graphdef::adjwgtsum, graphdef::bndind, graphdef::bndptr, graphdef::cmap, graphdef::coarser, graphdef::ed, graphdef::finer, graphdef::gdata, graphdef::gnpwgts, graphdef::gnvtxs, graphdef::gpwgts, graphdef::home, graphdef::id, graphdef::imap, graphdef::label, graphdef::lnpwgts, graphdef::lperm, graphdef::lpwgts, graphdef::match, graphdef::mincut, graphdef::minvol, graphdef::ncon, graphdef::nedges, graphdef::nlocal, graphdef::nnbrs, graphdef::npwgts, graphdef::nrecv, graphdef::nrinfo, graphdef::nsend, graphdef::nsep, graphdef::nvtxs, graphdef::nvwgt, graphdef::peadjloc, graphdef::peadjncy, graphdef::peind, graphdef::pexadj, graphdef::pwgts, graphdef::rcand, graphdef::rdata, graphdef::recvind, graphdef::recvptr, graphdef::rinfo, graphdef::rlens, graphdef::sendind, graphdef::sendptr, graphdef::sepind, graphdef::slens, graphdef::vrinfo, graphdef::vsize, graphdef::vtxdist, graphdef::vwgt, graphdef::where, and graphdef::xadj.
Referenced by CompressGraph(), CreateGraph(), PruneGraph(), SetUpGraph(), SetUpGraph2(), SetUpGraphKway(), SetUpSplitGraph(), and VolSetUpGraph().
| void FreeGraph | ( | GraphType * | ) |
Definition at line 204 of file memory.c.
References graphdef::adjncy, graphdef::adjwgt, graphdef::cmap, free(), graphdef::gdata, GKfree(), graphdef::gnpwgts, graphdef::gpwgts, graphdef::home, graphdef::imap, graphdef::label, graphdef::lnpwgts, graphdef::lperm, graphdef::lpwgts, graphdef::match, graphdef::npwgts, graphdef::nrinfo, graphdef::nvwgt, graphdef::peadjloc, graphdef::peadjncy, graphdef::peind, graphdef::pexadj, graphdef::rcand, graphdef::rdata, graphdef::recvind, graphdef::recvptr, graphdef::rinfo, graphdef::rlens, graphdef::sendind, graphdef::sendptr, graphdef::sepind, graphdef::slens, graphdef::vsize, graphdef::vtxdist, graphdef::vwgt, graphdef::where, and graphdef::xadj.
Referenced by InitMultisection(), Moc_InitPartition_RB(), Moc_ProjectPartition(), MocProject2WayPartition(), MocProjectKWayPartition(), MultilevelOrder(), ParMETIS_V3_NodeND(), ParMETIS_V3_PartGeomKway(), PartitionSmallGraph(), Project2WayNodePartition(), Project2WayPartition(), ProjectKWayPartition(), and ProjectVolKWayPartition().
Definition at line 168 of file memory.c.
References graphdef::adjncy, graphdef::adjwgt, graphdef::cmap, free(), GKfree(), graphdef::gnpwgts, graphdef::gpwgts, graphdef::imap, graphdef::label, graphdef::lnpwgts, graphdef::lperm, graphdef::lpwgts, graphdef::match, graphdef::nedges, graphdef::nrinfo, graphdef::nvwgt, graphdef::peadjloc, graphdef::peadjncy, graphdef::peind, graphdef::pexadj, graphdef::rcand, graphdef::recvind, graphdef::recvptr, graphdef::rinfo, graphdef::rlens, graphdef::sendind, graphdef::sendptr, graphdef::sepind, graphdef::slens, graphdef::vsize, graphdef::vwgt, and graphdef::where.
Referenced by ParMETIS_V3_AdaptiveRepart(), ParMETIS_V3_NodeND(), ParMETIS_V3_PartGeom(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), and ParMETIS_V3_RefineKway().
| void Adaptive_Partition | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 23 of file adrivers.c.
References Adaptive_Partition(), graphdef::adjwgt, Balance_Partition(), controldef::CoarsenTo, graphdef::coarser, controldef::dbglvl, controldef::edge_size_ratio, graphdef::finer, GlobalSEMax(), GlobalSEMin(), GlobalSESum(), graphdef::gnvtxs, graphdef::home, idxsmalloc(), idxsum(), graphdef::level, Mc_LocalMatch_HEM(), graphdef::mincut, Moc_ComputeParallelBalance(), Moc_ComputePartitionParams(), Moc_GlobalMatch_Balance(), Moc_KWayAdaptiveRefine(), Moc_KWayBalance(), Moc_ProjectPartition(), graphdef::ncon, graphdef::nedges, graphdef::nrecv, graphdef::nvtxs, controldef::partType, controldef::ps_relation, controldef::redist_base, controldef::redist_factor, rprintf(), savg(), SetUp(), controldef::ubvec, graphdef::vsize, and graphdef::where.
Referenced by Adaptive_Partition(), ParMETIS_V3_AdaptiveRepart(), and ParMETIS_V3_RefineKway().
| void Mc_LocalMatch_HEM | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 21 of file lmatch.c.
References graphdef::adjncy, graphdef::adjwgt, BetterVBalance(), controldef::comm, CommInterfaceData(), controldef::ContractTmr, controldef::dbglvl, FastRandomPermute(), GKfree(), graphdef::home, idxmalloc(), idxset(), idxsmalloc(), workspacedef::indices, graphdef::match, match(), graphdef::match_type, controldef::MatchTmr, maxi(), Mc_Local_CreateCoarseGraph(), MPI_Barrier(), controldef::mype, myprintf(), graphdef::ncon, controldef::nparts, graphdef::nrecv, graphdef::nvtxs, graphdef::nvwgt, controldef::partType, PrintVector2(), rprintf(), graphdef::vtxdist, and graphdef::xadj.
Referenced by Adaptive_Partition(), and Order_Partition().
| void Mc_Local_CreateCoarseGraph | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | , | |||
| int | ||||
| ) |
Definition at line 151 of file lmatch.c.
References graphdef::adjncy, graphdef::adjwgt, graphdef::cmap, graphdef::coarser, controldef::comm, CommInterfaceData(), CreateGraph(), graphdef::finer, fmalloc(), GKfree(), graphdef::gnvtxs, graphdef::home, idxmalloc(), workspacedef::indices, iset(), graphdef::level, graphdef::match, match(), MPI_Allgather(), controldef::mype, myprintf(), graphdef::ncon, graphdef::nedges, controldef::npes, graphdef::nrecv, graphdef::nvtxs, graphdef::nvwgt, controldef::partType, PrintVector(), controldef::tvwgts, graphdef::vsize, graphdef::vtxdist, graphdef::vwgt, graphdef::where, and graphdef::xadj.
Referenced by Mc_LocalMatch_HEM().
Definition at line 19 of file wave.c.
References graphdef::adjncy, graphdef::adjwgt, matrixdef::colind, ComputeLoad(), ComputeSerialEdgeCut(), ComputeTransferVector(), ConjGrad2(), done, FastRandomPermute(), fmalloc(), GetThreeMax(), GKfree(), GKmalloc(), GlobalSESum(), idxamax(), idxamin(), idxmalloc(), idxset(), ikeysort(), controldef::ipc_factor, KeyValueType::key, Mc_ComputeSerialTotalV(), graphdef::mincut, controldef::mype, graphdef::nedges, controldef::nparts, controldef::npes, matrixdef::nrows, graphdef::nvtxs, graphdef::nvwgt, controldef::redist_factor, matrixdef::rowptr, samax(), SetUpConnectGraph(), sset(), ssum(), controldef::tpwgts, matrixdef::transfer, controldef::ubvec, KeyValueType::val, matrixdef::values, graphdef::where, and graphdef::xadj.
Referenced by Balance_Partition().
| int BalanceMyLink | ( | CtrlType * | , | |
| GraphType * | , | |||
| idxtype * | , | |||
| int | , | |||
| int | , | |||
| floattype * | , | |||
| floattype | , | |||
| floattype * | , | |||
| floattype * | , | |||
| floattype | ||||
| ) |
Definition at line 20 of file balancemylink.c.
References graphdef::adjncy, graphdef::adjwgt, FPQueueFree(), FPQueueGetMax(), FPQueueInit(), FPQueueInsert(), FPQueueReset(), FPQueueUpdate(), GKfree(), GKmalloc(), idxmalloc(), idxset(), idxsmalloc(), controldef::ipc_factor, Moc_DynamicSelectQueue(), Moc_HashVwgts(), MPI_Comm_rank(), MPI_COMM_WORLD, graphdef::ncon, meshdef::ncon, graphdef::nvtxs, graphdef::nvwgt, ptr, controldef::redist_factor, savg(), sset(), graphdef::vsize, graphdef::where, and graphdef::xadj.
Referenced by Moc_Diffusion().
| void RedoMyLink | ( | CtrlType * | , | |
| GraphType * | , | |||
| idxtype * | , | |||
| int | , | |||
| int | , | |||
| floattype * | , | |||
| floattype * | , | |||
| floattype * | ||||
| ) |
Definition at line 20 of file redomylink.c.
References graphdef::adjncy, graphdef::adjwgt, GKfree(), graphdef::gnpwgts, idxmalloc(), idxset(), idxsum(), controldef::ipc_factor, graphdef::mincut, Moc_Serial_Balance2Way(), Moc_Serial_Compute2WayPartitionParams(), Moc_Serial_FM_2WayRefine(), Moc_Serial_Init2WayBalance(), MPI_Comm_rank(), MPI_COMM_WORLD, graphdef::ncon, graphdef::nedges, graphdef::nvtxs, graphdef::nvwgt, RandomPermute(), graphdef::recvind, graphdef::recvptr, controldef::redist_factor, savg(), graphdef::sendind, graphdef::sendptr, sset(), graphdef::vsize, graphdef::where, and graphdef::xadj.
Referenced by Moc_Diffusion().
| void Balance_Partition | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 22 of file initbalance.c.
References graphdef::adjncy, graphdef::adjwgt, controldef::comm, ComputeSerialEdgeCut(), controldef::dbglvl, fsmalloc(), controldef::gcomm, GKfree(), graphdef::home, idxmalloc(), idxset(), imalloc(), controldef::InitPartTmr, controldef::ipc_factor, graphdef::label, Mc_ComputeSerialTotalV(), METIS_mCPartGraphRecursive2(), METIS_WPartGraphKway2(), Moc_AssembleAdaptiveGraph(), Moc_ComputeSerialBalance(), Moc_Diffusion(), Moc_KeepPart(), MPI_Allgatherv(), MPI_Allreduce(), MPI_Bcast(), MPI_Comm_free(), MPI_Comm_rank(), MPI_Comm_size(), MPI_Comm_split(), MPI_DOUBLE, MPI_DOUBLE_INT, MPI_INT, MPI_MAX, MPI_MIN, MPI_MINLOC, MPI_Recv(), MPI_Send(), MPI_SUM, MPI_UNDEFINED, controldef::mype, graphdef::ncon, graphdef::nedges, controldef::nparts, controldef::npes, graphdef::nvtxs, graphdef::nvwgt, controldef::partType, printf(), controldef::ps_relation, controldef::redist_base, controldef::redist_factor, rprintf(), controldef::seed, SerialRemap(), sscale(), ssum(), status(), controldef::sync, controldef::tpwgts, controldef::tvwgts, controldef::ubvec, graphdef::vsize, graphdef::vtxdist, graphdef::vwgt, WavefrontDiffusion(), graphdef::where, and graphdef::xadj.
Referenced by Adaptive_Partition().
| GraphType* Moc_AssembleAdaptiveGraph | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 366 of file initbalance.c.
References graphdef::adjncy, graphdef::adjwgt, controldef::comm, workspacedef::core, CreateGraph(), fmalloc(), free(), GKfree(), graphdef::gnvtxs, idxmalloc(), imalloc(), graphdef::imap, graphdef::label, workspacedef::maxcore, MPI_Allgather(), MPI_Allgatherv(), MPI_INT, graphdef::ncon, graphdef::nedges, controldef::npes, graphdef::nvtxs, graphdef::nvwgt, controldef::partType, printf(), controldef::tvwgts, graphdef::vsize, graphdef::vtxdist, graphdef::vwgt, and graphdef::xadj.
Referenced by Balance_Partition(), Moc_InitPartition_RB(), and PartitionSmallGraph().
| int Moc_Diffusion | ( | CtrlType * | , | |
| GraphType * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| WorkSpaceType * | , | |||
| int | ||||
| ) |
Definition at line 22 of file mdiffusion.c.
References graphdef::adjncy, BalanceMyLink(), matrixdef::colind, controldef::comm, ComputeLoad(), ComputeTransferVector(), ConjGrad2(), CSR_Match_SHEM(), done, ExtractGraph(), fmalloc(), GKfree(), GKmalloc(), GlobalSEMax(), GlobalSESum(), graphdef::gnpwgts, idxmalloc(), idxset(), idxsum(), imalloc(), iset(), match(), Moc_ComputeSerialPartitionParams(), Moc_SerialKWayAdaptRefine(), MPI_Allgatherv(), MPI_Allreduce(), MPI_MAX, controldef::mype, graphdef::ncon, graphdef::nedges, matrixdef::nnzs, controldef::nparts, controldef::npes, matrixdef::nrows, graphdef::nvtxs, graphdef::nvwgt, pack(), RedoMyLink(), graphdef::rinfo, matrixdef::rowptr, samax(), samax_strd(), samin(), savg(), SetUpConnectGraph(), sset(), controldef::tpwgts, matrixdef::transfer, controldef::ubvec, unpack(), matrixdef::values, graphdef::where, and graphdef::xadj.
Referenced by Balance_Partition().
Definition at line 366 of file mdiffusion.c.
References graphdef::adjncy, graphdef::adjwgt, CreateGraph(), fmalloc(), idxmalloc(), idxset(), graphdef::ncon, graphdef::nedges, graphdef::nvtxs, graphdef::nvwgt, controldef::partType, graphdef::vsize, graphdef::where, and graphdef::xadj.
Referenced by Moc_Diffusion().
| void SetUpConnectGraph | ( | GraphType * | , | |
| MatrixType * | , | |||
| idxtype * | ||||
| ) |
Definition at line 21 of file diffutil.c.
References graphdef::adjncy, matrixdef::colind, idxset(), matrixdef::nnzs, matrixdef::nrows, graphdef::nvtxs, matrixdef::rowptr, matrixdef::values, values, graphdef::where, and graphdef::xadj.
Referenced by Moc_Diffusion(), and WavefrontDiffusion().
Definition at line 87 of file diffutil.c.
References controldef::comm, GKfree(), graphdef::home, idxamax(), idxsmalloc(), idxsum(), MPI_Allreduce(), MPI_SUM, controldef::mype, controldef::nparts, graphdef::nvtxs, controldef::ps_relation, graphdef::vsize, graphdef::vwgt, and graphdef::where.
Referenced by ParMETIS_V3_AdaptiveRepart(), and ParMETIS_V3_RefineKway().
Definition at line 131 of file diffutil.c.
References graphdef::ncon, graphdef::nvtxs, graphdef::vsize, graphdef::vwgt, and graphdef::where.
Referenced by Balance_Partition(), and WavefrontDiffusion().
Definition at line 149 of file diffutil.c.
References graphdef::ncon, meshdef::ncon, graphdef::nvtxs, graphdef::nvwgt, sset(), ssum(), and graphdef::where.
Referenced by Moc_Diffusion(), and WavefrontDiffusion().
| void ConjGrad2 | ( | MatrixType * | , | |
| floattype * | , | |||
| floattype * | , | |||
| floattype | , | |||
| floattype * | ||||
| ) |
Definition at line 179 of file diffutil.c.
References alpha, beta, matrixdef::colind, mvMult2(), n, matrixdef::nrows, p, matrixdef::rowptr, saxpy(), sdot(), snorm2(), matrixdef::values, and values.
Referenced by Moc_Diffusion(), and WavefrontDiffusion().
| void mvMult2 | ( | MatrixType * | , | |
| floattype * | , | |||
| floattype * | ||||
| ) |
Definition at line 258 of file diffutil.c.
References matrixdef::colind, matrixdef::nrows, matrixdef::rowptr, and matrixdef::values.
Referenced by ConjGrad2().
| void ComputeTransferVector | ( | int | , | |
| MatrixType * | , | |||
| floattype * | , | |||
| floattype * | , | |||
| int | ||||
| ) |
Definition at line 276 of file diffutil.c.
References matrixdef::colind, matrixdef::nrows, and matrixdef::rowptr.
Referenced by Moc_Diffusion(), and WavefrontDiffusion().
Definition at line 1221 of file serial.c.
References graphdef::adjncy, graphdef::adjwgt, graphdef::mincut, graphdef::nvtxs, graphdef::where, and graphdef::xadj.
Referenced by Balance_Partition(), Moc_InitPartition_RB(), and WavefrontDiffusion().
Definition at line 1239 of file serial.c.
References graphdef::nvtxs, graphdef::vsize, graphdef::vwgt, and graphdef::where.
| void Moc_KWayAdaptiveRefine | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | , | |||
| int | ||||
| ) |
Definition at line 23 of file akwayfm.c.
References graphdef::adjncy, graphdef::adjwgt, c, controldef::comm, CommChangedInterfaceData(), controldef::dbglvl, rinfodef::degrees, rinfodef::ed, edgedef::edge, edgedef::ewgt, FastRandomPermute(), fmalloc(), GKfree(), GKmalloc(), GlobalSESum(), graphdef::gnpwgts, graphdef::home, rinfodef::id, idxmalloc(), idxsmalloc(), iidxsort(), imalloc(), graphdef::imap, workspacedef::indices, controldef::ipc_factor, IsHBalanceBetterFT(), IsHBalanceBetterTT(), controldef::KWayTmr, graphdef::level, graphdef::lmincut, graphdef::lnpwgts, graphdef::mincut, Moc_ComputeParallelBalance(), MPI_Allreduce(), MPI_Bcast(), MPI_DOUBLE, MPI_Get_count(), MPI_Irecv(), MPI_Isend(), MPI_SUM, MPI_Waitall(), controldef::mype, graphdef::ncon, meshdef::ncon, rinfodef::ndegrees, graphdef::nedges, graphdef::nnbrs, controldef::nparts, controldef::npes, graphdef::nrecv, graphdef::nvtxs, graphdef::nvwgt, workspacedef::pairs, graphdef::peind, graphdef::pexadj, controldef::ps_relation, workspacedef::pv4, RandomPermute(), graphdef::recvptr, controldef::redist_factor, graphdef::rinfo, rprintf(), controldef::rreq, savg(), graphdef::sendptr, controldef::sreq, sset(), controldef::statuses, controldef::tpwgts, controldef::ubvec, graphdef::vsize, graphdef::vtxdist, graphdef::where, and graphdef::xadj.
Referenced by Adaptive_Partition().
| void Moc_DynamicSelectQueue | ( | int | , | |
| int | , | |||
| int | , | |||
| int | , | |||
| idxtype * | , | |||
| floattype * | , | |||
| int * | , | |||
| int * | , | |||
| int | , | |||
| floattype | , | |||
| floattype | ||||
| ) |
Definition at line 19 of file selectq.c.
References iset(), KVType::key, Moc_HashVRank(), MPI_Comm_rank(), MPI_COMM_WORLD, myvalkeycompare(), qsort(), and KVType::val.
Referenced by BalanceMyLink().
Definition at line 293 of file selectq.c.
References KVType::key, myvalkeycompare(), qsort(), and KVType::val.
Referenced by BalanceMyLink().
| void CSR_Match_SHEM | ( | MatrixType * | , | |
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| int | ||||
| ) |
Definition at line 23 of file csrmatch.c.
References matrixdef::colind, GKfree(), GKmalloc(), idxset(), KVType::key, myvalkeycompare(), matrixdef::nrows, qsort(), matrixdef::rowptr, matrixdef::transfer, and KVType::val.
Referenced by Moc_Diffusion().
Definition at line 19 of file serial.c.
References graphdef::adjncy, graphdef::adjwgt, AreAllHVwgtsBelow(), ComputeHKWayLoadImbalance(), rinfodef::degrees, rinfodef::ed, edgedef::edge, edgedef::ewgt, fmalloc(), GKfree(), GKmalloc(), graphdef::gnpwgts, rinfodef::id, ikeysort(), IsHBalanceBetterFT(), IsHBalanceBetterTT(), KeyValueType::key, graphdef::mincut, MPI_Comm_rank(), MPI_COMM_WORLD, graphdef::ncon, rinfodef::ndegrees, graphdef::nvtxs, graphdef::nvwgt, graphdef::rinfo, saxpy2(), KeyValueType::val, graphdef::where, and graphdef::xadj.
Referenced by Moc_Diffusion().
Definition at line 232 of file serial.c.
References graphdef::adjncy, graphdef::adjwgt, rinfodef::degrees, rinfodef::ed, edgedef::edge, edgedef::ewgt, graphdef::gnpwgts, rinfodef::id, graphdef::mincut, MPI_Comm_rank(), MPI_COMM_WORLD, graphdef::ncon, rinfodef::ndegrees, graphdef::nvtxs, graphdef::nvwgt, graphdef::rinfo, saxpy2(), sset(), graphdef::where, and graphdef::xadj.
Referenced by Moc_Diffusion().
Definition at line 512 of file mkwayfmh.c.
Referenced by MCGreedy_KWayEdgeBalanceHorizontal(), MCRandom_KWayEdgeRefineHorizontal(), and Moc_SerialKWayAdaptRefine().
Definition at line 545 of file mkwayfmh.c.
References max().
Referenced by MCGreedy_KWayEdgeBalanceHorizontal(), MCRandom_KWayEdgeRefineHorizontal(), and Moc_SerialKWayAdaptRefine().
Definition at line 348 of file serial.c.
References GKfree(), GKmalloc(), idxsmalloc(), idxsum(), ikeysort(), KeyValueType::key, KeyKeyValueType::key1, KeyKeyValueType::key2, graphdef::ncon, graphdef::nvtxs, qsort(), SimilarTpwgts(), SSMIncKeyCmp(), KeyValueType::val, KeyKeyValueType::val, and graphdef::vsize.
Referenced by Balance_Partition().
| int SSMIncKeyCmp | ( | const void * | , | |
| const void * | ||||
| ) |
Definition at line 484 of file serial.c.
References KeyKeyValueType::key1, and KeyKeyValueType::key2.
Referenced by SerialRemap().
Definition at line 510 of file serial.c.
References graphdef::adjncy, graphdef::adjwgt, FPQueueDelete(), FPQueueFree(), FPQueueGetMax(), FPQueueInit(), FPQueueInsert(), FPQueueReset(), FPQueueUpdate(), GKfree(), GKmalloc(), graphdef::gnpwgts, graphdef::gnvtxs, idxmalloc(), idxset(), ikeysort(), KeyValueType::key, graphdef::mincut, MPI_Comm_rank(), MPI_COMM_WORLD, graphdef::ncon, graphdef::nvtxs, graphdef::nvwgt, graphdef::recvind, graphdef::recvptr, samax(), saxpy2(), graphdef::sendind, graphdef::sendptr, Serial_BetterBalance(), Serial_Compute2WayHLoadImbalance(), Serial_SelectQueue(), KeyValueType::val, graphdef::where, and graphdef::xadj.
Referenced by RedoMyLink().
| void Serial_SelectQueue | ( | int | , | |
| floattype * | , | |||
| floattype * | , | |||
| int * | , | |||
| int * | , | |||
| FPQueueType | [MAXNCON][2] | |||
| ) |
Definition at line 705 of file serial.c.
References FPQueueGetQSize(), FPQueueSeeMaxGain(), max(), MPI_Comm_rank(), and MPI_COMM_WORLD.
Referenced by Moc_Serial_Balance2Way(), and Moc_Serial_FM_2WayRefine().
Definition at line 770 of file serial.c.
References snorm2().
Referenced by Moc_Serial_Balance2Way(), and Moc_Serial_FM_2WayRefine().
Definition at line 786 of file serial.c.
References max().
Referenced by Moc_Serial_Balance2Way(), and Moc_Serial_FM_2WayRefine().
Definition at line 806 of file serial.c.
References graphdef::adjncy, graphdef::adjwgt, FPQueueFree(), FPQueueGetMax(), FPQueueInit(), FPQueueInsert(), FPQueueUpdate(), GKfree(), GKmalloc(), graphdef::gnpwgts, graphdef::gnvtxs, idxmalloc(), idxset(), ikeysort(), KeyValueType::key, graphdef::mincut, graphdef::ncon, graphdef::nvtxs, graphdef::nvwgt, graphdef::recvind, graphdef::recvptr, samax(), samax2(), saxpy2(), graphdef::sendind, graphdef::sendptr, Serial_BetterBalance(), Serial_Compute2WayHLoadImbalance(), Serial_SelectQueue(), KeyValueType::val, graphdef::where, and graphdef::xadj.
Referenced by RedoMyLink().
Definition at line 1005 of file serial.c.
References graphdef::adjncy, graphdef::adjwgt, FPQueueDelete(), FPQueueFree(), FPQueueGetMax(), FPQueueInit(), FPQueueInsert(), FPQueueUpdate(), GKfree(), GKmalloc(), graphdef::gnpwgts, graphdef::gnvtxs, idxmalloc(), ikeysort(), KeyValueType::key, graphdef::mincut, graphdef::ncon, graphdef::nvtxs, graphdef::nvwgt, graphdef::recvind, graphdef::recvptr, samax(), saxpy2(), graphdef::sendind, graphdef::sendptr, Serial_AreAnyVwgtsBelow(), Serial_SelectQueueOneWay(), KeyValueType::val, graphdef::where, and graphdef::xadj.
Referenced by RedoMyLink().
Definition at line 1132 of file serial.c.
References FPQueueGetQSize(), and max().
Referenced by Moc_Serial_Init2WayBalance().
| void Moc_Serial_Compute2WayPartitionParams | ( | GraphType * | ) |
Definition at line 1153 of file serial.c.
References graphdef::adjncy, graphdef::adjwgt, graphdef::gnpwgts, graphdef::gnvtxs, idxset(), graphdef::mincut, graphdef::ncon, graphdef::nvtxs, graphdef::nvwgt, graphdef::recvind, graphdef::recvptr, saxpy2(), graphdef::sendind, graphdef::sendptr, sset(), graphdef::where, and graphdef::xadj.
Referenced by RedoMyLink().
| void PartitionSmallGraph | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 22 of file weird.c.
References graphdef::adjncy, graphdef::adjwgt, controldef::comm, fmalloc(), free(), FreeGraph(), GKfree(), graphdef::gnpwgts, idxmalloc(), imalloc(), graphdef::lnpwgts, METIS_mCPartGraphRecursive2(), METIS_WPartGraphKway2(), graphdef::mincut, Moc_AssembleAdaptiveGraph(), MPI_2INT, MPI_Allreduce(), MPI_Comm_rank(), MPI_Comm_size(), MPI_DOUBLE, MPI_MINLOC, MPI_Recv(), MPI_Scatterv(), MPI_Send(), MPI_SUM, graphdef::ncon, controldef::nparts, graphdef::nrecv, graphdef::nvtxs, graphdef::nvwgt, SetUp(), sset(), controldef::status, controldef::sync, controldef::tpwgts, graphdef::vtxdist, graphdef::vwgt, graphdef::where, and graphdef::xadj.
Referenced by ParMETIS_V3_PartGeomKway(), and ParMETIS_V3_PartKway().
| void CheckInputs | ( | int | partType, | |
| int | npes, | |||
| int | dbglvl, | |||
| int * | wgtflag, | |||
| int * | iwgtflag, | |||
| int * | numflag, | |||
| int * | inumflag, | |||
| int * | ncon, | |||
| int * | incon, | |||
| int * | nparts, | |||
| int * | inparts, | |||
| floattype * | tpwgts, | |||
| floattype ** | itpwgts, | |||
| floattype * | ubvec, | |||
| floattype * | iubvec, | |||
| floattype * | ipc2redist, | |||
| floattype * | iipc2redist, | |||
| int * | options, | |||
| int * | ioptions, | |||
| idxtype * | part, | |||
| MPI_Comm * | comm | |||
| ) |
Definition at line 106 of file weird.c.
References abort(), fmalloc(), MPI_Allreduce(), MPI_INT, MPI_MAX, printf(), and sset().
Referenced by ParMETIS_V3_AdaptiveRepart(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), and ParMETIS_V3_RefineKway().
Definition at line 112 of file pspases.c.
References graphdef::adjncy, controldef::comm, CreateGraph(), idxmalloc(), imalloc(), MPI_Allgather(), MPI_Gatherv(), MPI_INT, controldef::mype, graphdef::nedges, controldef::npes, graphdef::nvtxs, and graphdef::xadj.
Referenced by ParMETIS_SerialNodeND().
| void ComputeNodePartitionParams0 | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
| void ComputeNodePartitionParams | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 25 of file node_refine.c.
References graphdef::adjncy, graphdef::adjwgt, controldef::comm, CommInterfaceData(), controldef::dbglvl, nrinfodef::edegrees, GKmalloc(), graphdef::gpwgts, idxmalloc(), idxsmalloc(), workspacedef::indices, controldef::KWayInitTmr, graphdef::lpwgts, graphdef::mincut, MPI_Allreduce(), MPI_SUM, controldef::mype, controldef::nparts, graphdef::nrinfo, graphdef::nsep, graphdef::nvtxs, printf(), graphdef::sepind, graphdef::vtxdist, graphdef::vwgt, graphdef::where, and graphdef::xadj.
Referenced by Order_Partition().
| void KWayNodeRefine0 | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | , | |||
| int | , | |||
| floattype | ||||
| ) |
| void KWayNodeRefine | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | , | |||
| int | , | |||
| floattype | ||||
| ) |
Definition at line 114 of file node_refine.c.
References graphdef::adjncy, graphdef::adjwgt, c, controldef::comm, CommChangedInterfaceData(), controldef::dbglvl, nrinfodef::edegrees, GKfree(), GlobalSESum(), graphdef::gpwgts, idxmalloc(), idxsmalloc(), iidxsort(), imalloc(), graphdef::imap, workspacedef::indices, controldef::KWayTmr, graphdef::lpwgts, graphdef::mincut, MPI_Allreduce(), MPI_Get_count(), MPI_Irecv(), MPI_Isend(), MPI_SUM, MPI_Waitall(), controldef::mype, graphdef::nnbrs, controldef::nparts, controldef::npes, graphdef::nrecv, graphdef::nrinfo, graphdef::nsep, graphdef::nvtxs, workspacedef::pairs, graphdef::peind, graphdef::pexadj, PrintNodeBalanceInfo(), workspacedef::pv1, workspacedef::pv2, workspacedef::pv4, graphdef::recvptr, rprintf(), controldef::rreq, graphdef::sendptr, graphdef::sepind, controldef::sreq, controldef::statuses, graphdef::vtxdist, graphdef::vwgt, graphdef::where, and graphdef::xadj.
Referenced by Order_Partition().
| void KWayNodeRefine2 | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | , | |||
| int | , | |||
| floattype | ||||
| ) |
Definition at line 367 of file node_refine.c.
References controldef::comm, MPI_Barrier(), controldef::mype, and printf().
Referenced by KWayNodeRefine().
| void InitMultisection | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 26 of file initmsection.c.
References graphdef::adjncy, graphdef::adjwgt, AssembleMultisectedGraph(), controldef::comm, controldef::dbglvl, errexit(), free(), FreeGraph(), GKfree(), graphdef::gnvtxs, idxmalloc(), idxsmalloc(), imalloc(), controldef::InitPartTmr, controldef::ipart, graphdef::label, METIS_EdgeComputeSeparator(), METIS_NodeComputeSeparator(), graphdef::mincut, Moc_KeepPart(), MPI_2INT, MPI_Allreduce(), MPI_Comm_free(), MPI_Comm_rank(), MPI_Comm_split(), MPI_MINLOC, MPI_Recv(), MPI_Reduce(), MPI_Scatterv(), MPI_Send(), MPI_SUM, controldef::mype, graphdef::ncon, controldef::nparts, controldef::npes, graphdef::nrecv, graphdef::nvtxs, controldef::status, graphdef::vtxdist, graphdef::vwgt, graphdef::where, and graphdef::xadj.
Referenced by Order_Partition().
| GraphType* AssembleMultisectedGraph | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 156 of file initmsection.c.
References graphdef::adjncy, graphdef::adjwgt, controldef::comm, workspacedef::core, CreateGraph(), free(), GKfree(), graphdef::gnvtxs, idxmalloc(), imalloc(), graphdef::imap, graphdef::label, workspacedef::maxcore, MPI_Allgather(), MPI_Allgatherv(), MPI_INT, graphdef::nedges, controldef::npes, graphdef::nvtxs, graphdef::vtxdist, graphdef::vwgt, graphdef::where, and graphdef::xadj.
Referenced by InitMultisection().
| void MultilevelOrder | ( | CtrlType * | , | |
| GraphType * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 22 of file order.c.
References controldef::CoarsenTo, controldef::comm, CompactGraph(), controldef::dbglvl, FreeGraph(), GKfree(), graphdef::gnvtxs, idxmalloc(), idxset(), idxsmalloc(), LabelSeparators(), LocalNDOrder(), Moc_MoveGraph(), controldef::MoveTmr, MPI_Barrier(), controldef::mype, graphdef::ncon, controldef::nparts, controldef::npes, graphdef::nvtxs, Order_Partition(), ProjectInfoBack(), SetUp(), graphdef::vtxdist, and graphdef::where.
Referenced by ParMETIS_V3_NodeND().
| void LabelSeparators | ( | CtrlType * | , | |
| GraphType * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 104 of file order.c.
References controldef::comm, controldef::dbglvl, free(), graphdef::gpwgts, idxmalloc(), idxset(), graphdef::lpwgts, MPI_Allreduce(), MPI_Barrier(), MPI_Scan(), MPI_SUM, controldef::mype, controldef::nparts, graphdef::nvtxs, printf(), PrintVector(), and graphdef::where.
Referenced by MultilevelOrder().
| void CompactGraph | ( | CtrlType * | , | |
| GraphType * | , | |||
| idxtype * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 178 of file order.c.
References graphdef::adjncy, graphdef::adjwgt, graphdef::cmap, controldef::comm, CommInterfaceData(), GKfree(), graphdef::gnvtxs, graphdef::gpwgts, idxmalloc(), idxsum(), graphdef::imap, workspacedef::indices, graphdef::label, graphdef::lperm, graphdef::lpwgts, graphdef::match, MPI_Allgather(), controldef::mype, graphdef::nedges, controldef::nparts, controldef::npes, graphdef::nrecv, graphdef::nrinfo, graphdef::nvtxs, graphdef::peadjloc, graphdef::peadjncy, graphdef::peind, graphdef::pexadj, printf(), PrintVector(), workspacedef::pv1, graphdef::rcand, graphdef::recvind, graphdef::recvptr, graphdef::rinfo, graphdef::rlens, graphdef::sendind, graphdef::sendptr, graphdef::sepind, graphdef::slens, graphdef::vtxdist, graphdef::vwgt, graphdef::where, and graphdef::xadj.
Referenced by MultilevelOrder().
| void LocalOrder | ( | CtrlType * | , | |
| GraphType * | , | |||
| idxtype * | , | |||
| int | , | |||
| WorkSpaceType * | ||||
| ) |
| void LocalNDOrder | ( | CtrlType * | , | |
| GraphType * | , | |||
| idxtype * | , | |||
| int | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 277 of file order.c.
References graphdef::adjncy, workspacedef::core, workspacedef::maxcore, METIS_NodeND(), controldef::mype, graphdef::nvtxs, graphdef::vtxdist, and graphdef::xadj.
Referenced by MultilevelOrder().
| void Order_Partition | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 317 of file order.c.
References controldef::CoarsenTo, graphdef::coarser, ComputeNodePartitionParams(), controldef::dbglvl, graphdef::finer, GlobalSEMax(), GlobalSEMin(), GlobalSESum(), graphdef::gnvtxs, idxamax(), InitMultisection(), KWayNodeRefine(), Mc_LocalMatch_HEM(), Moc_ProjectPartition(), graphdef::ncon, graphdef::nedges, graphdef::nvtxs, Order_Partition(), rprintf(), SetUp(), and graphdef::vwgt.
Referenced by MultilevelOrder(), and Order_Partition().
Definition at line 21 of file xyzpart.c.
References controldef::comm, coords, errexit(), free(), GKmalloc(), KeyValueType::key, max(), min(), MPI_Allreduce(), MPI_DOUBLE, MPI_MAX, MPI_MIN, controldef::mype, graphdef::nrecv, graphdef::nvtxs, PartSort(), SetUp(), KeyValueType::val, graphdef::vtxdist, and controldef::xyztype.
Referenced by ParMETIS_V3_PartGeom(), and ParMETIS_V3_PartGeomKway().
| void PartSort | ( | CtrlType * | , | |
| GraphType * | , | |||
| KeyValueType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 108 of file xyzpart.c.
References controldef::comm, free(), GKfree(), GKmalloc(), idxmalloc(), idxset(), ikeysort(), ikeyvalsort(), KeyValueType::key, MPI_Allgather(), MPI_Alltoall(), MPI_INT, MPI_Irecv(), MPI_Isend(), MPI_Scan(), MPI_SUM, MPI_Waitall(), controldef::mype, workspacedef::nlarge, controldef::npes, graphdef::nrecv, graphdef::nvtxs, workspacedef::pairs, workspacedef::pv1, workspacedef::pv2, controldef::rreq, controldef::sreq, controldef::statuses, KeyValueType::val, graphdef::vtxdist, and graphdef::where.
Referenced by Coordinate_Partition().
| void FPQueueInit | ( | FPQueueType * | , | |
| int | ||||
| ) |
Definition at line 23 of file fpqueue.c.
References FPQueueType::heap, idxset(), FPQueueType::locator, malloc(), FPQueueType::maxnodes, and FPQueueType::nnodes.
Referenced by BalanceMyLink(), Moc_Serial_Balance2Way(), Moc_Serial_FM_2WayRefine(), and Moc_Serial_Init2WayBalance().
| void FPQueueReset | ( | FPQueueType * | ) |
Definition at line 41 of file fpqueue.c.
References idxset(), FPQueueType::locator, FPQueueType::maxnodes, and FPQueueType::nnodes.
Referenced by BalanceMyLink(), and Moc_Serial_FM_2WayRefine().
| void FPQueueFree | ( | FPQueueType * | ) |
Definition at line 53 of file fpqueue.c.
References free(), FPQueueType::heap, FPQueueType::locator, and FPQueueType::maxnodes.
Referenced by BalanceMyLink(), Moc_Serial_Balance2Way(), Moc_Serial_FM_2WayRefine(), and Moc_Serial_Init2WayBalance().
| int FPQueueGetSize | ( | FPQueueType * | ) |
| int FPQueueInsert | ( | FPQueueType * | , | |
| int | , | |||
| floattype | ||||
| ) |
Definition at line 75 of file fpqueue.c.
References CheckHeapFloat(), FPQueueType::heap, FKeyValueType::key, FPQueueType::locator, FPQueueType::nnodes, and FKeyValueType::val.
Referenced by BalanceMyLink(), Moc_Serial_Balance2Way(), Moc_Serial_FM_2WayRefine(), and Moc_Serial_Init2WayBalance().
| int FPQueueDelete | ( | FPQueueType * | , | |
| int | ||||
| ) |
Definition at line 114 of file fpqueue.c.
References CheckHeapFloat(), FPQueueType::heap, FKeyValueType::key, FPQueueType::locator, FPQueueType::nnodes, and FKeyValueType::val.
Referenced by Moc_Serial_FM_2WayRefine(), and Moc_Serial_Init2WayBalance().
| int FPQueueUpdate | ( | FPQueueType * | , | |
| int | , | |||
| floattype | , | |||
| floattype | ||||
| ) |
Definition at line 187 of file fpqueue.c.
References CheckHeapFloat(), FPQueueType::heap, FKeyValueType::key, FPQueueType::locator, FPQueueType::nnodes, and FKeyValueType::val.
Referenced by BalanceMyLink(), Moc_Serial_Balance2Way(), Moc_Serial_FM_2WayRefine(), and Moc_Serial_Init2WayBalance().
| void FPQueueUpdateUp | ( | FPQueueType * | , | |
| int | , | |||
| floattype | , | |||
| floattype | ||||
| ) |
Definition at line 255 of file fpqueue.c.
References CheckHeapFloat(), FPQueueType::heap, FKeyValueType::key, FPQueueType::locator, and FKeyValueType::val.
| int FPQueueGetMax | ( | FPQueueType * | ) |
Definition at line 299 of file fpqueue.c.
References CheckHeapFloat(), FPQueueType::heap, FKeyValueType::key, FPQueueType::locator, FPQueueType::nnodes, and FKeyValueType::val.
Referenced by BalanceMyLink(), Moc_Serial_Balance2Way(), Moc_Serial_FM_2WayRefine(), and Moc_Serial_Init2WayBalance().
| int FPQueueSeeMaxVtx | ( | FPQueueType * | ) |
Definition at line 352 of file fpqueue.c.
References FPQueueType::heap, FPQueueType::nnodes, and FKeyValueType::val.
| floattype FPQueueSeeMaxGain | ( | FPQueueType * | ) |
Definition at line 368 of file fpqueue.c.
References FPQueueType::heap, FKeyValueType::key, and FPQueueType::nnodes.
Referenced by Serial_SelectQueue().
| floattype FPQueueGetKey | ( | FPQueueType * | ) |
Definition at line 384 of file fpqueue.c.
References FPQueueType::heap, FKeyValueType::key, and FPQueueType::nnodes.
| int FPQueueGetQSize | ( | FPQueueType * | ) |
Definition at line 399 of file fpqueue.c.
References FPQueueType::nnodes.
Referenced by Serial_SelectQueue(), and Serial_SelectQueueOneWay().
| int CheckHeapFloat | ( | FPQueueType * | ) |
Definition at line 412 of file fpqueue.c.
References FPQueueType::heap, FPQueueType::locator, FPQueueType::maxnodes, and FPQueueType::nnodes.
Referenced by FPQueueDelete(), FPQueueGetMax(), FPQueueInsert(), FPQueueUpdate(), and FPQueueUpdateUp().
Definition at line 22 of file stat.c.
References GKfree(), idxsmalloc(), graphdef::ncon, controldef::nparts, graphdef::nvtxs, controldef::tpwgts, and graphdef::vwgt.
Referenced by Balance_Partition(), and Moc_InitPartition_RB().
Definition at line 59 of file stat.c.
References controldef::comm, fmalloc(), GKfree(), MPI_Allreduce(), MPI_DOUBLE, MPI_MIN, MPI_SUM, graphdef::ncon, controldef::nparts, graphdef::nvtxs, graphdef::nvwgt, sset(), and controldef::tpwgts.
Referenced by Adaptive_Partition(), Moc_Global_Partition(), Moc_KWayAdaptiveRefine(), Moc_KWayBalance(), and Moc_KWayFM().
Definition at line 106 of file stat.c.
References controldef::comm, MPI_Barrier(), controldef::mype, controldef::npes, and printf().
Definition at line 133 of file stat.c.
References graphdef::adjncy, graphdef::adjwgt, controldef::comm, rinfodef::degrees, edgedef::edge, edgedef::ewgt, GKfree(), GlobalSESum(), graphdef::gnpwgts, rinfodef::id, idxmalloc(), idxsmalloc(), graphdef::level, graphdef::lnpwgts, MPI_MAX, MPI_Reduce(), MPI_SUM, controldef::mype, graphdef::ncon, rinfodef::ndegrees, controldef::nparts, graphdef::nvtxs, graphdef::nvwgt, printf(), graphdef::rinfo, ssum_strd(), graphdef::where, and graphdef::xadj.
Definition at line 22 of file debug.c.
References controldef::comm, MPI_Barrier(), controldef::mype, controldef::npes, and printf().
Referenced by CompactGraph(), LabelSeparators(), Mc_Local_CreateCoarseGraph(), Moc_ComputePartitionParams(), Moc_Global_CreateCoarseGraph(), and Moc_ProjectPartition().
Definition at line 44 of file debug.c.
References controldef::comm, MPI_Barrier(), controldef::mype, controldef::npes, and printf().
Referenced by Mc_LocalMatch_HEM(), and Moc_GlobalMatch_Balance().
| void PrintPairs | ( | CtrlType * | , | |
| int | , | |||
| KeyValueType * | , | |||
| char * | ||||
| ) |
Definition at line 66 of file debug.c.
References controldef::comm, MPI_Barrier(), controldef::mype, controldef::npes, and printf().
Referenced by Moc_Global_CreateCoarseGraph(), and Moc_ProjectPartition().
Definition at line 90 of file debug.c.
References graphdef::adjncy, graphdef::adjwgt, controldef::comm, MPI_Barrier(), controldef::mype, controldef::npes, graphdef::nvtxs, printf(), graphdef::vtxdist, graphdef::vwgt, and graphdef::xadj.
Definition at line 122 of file debug.c.
References graphdef::adjncy, graphdef::adjwgt, controldef::comm, rinfodef::ed, rinfodef::id, MPI_Barrier(), controldef::mype, controldef::npes, graphdef::nvtxs, printf(), graphdef::rinfo, graphdef::vtxdist, graphdef::vwgt, graphdef::where, and graphdef::xadj.
Definition at line 153 of file debug.c.
References controldef::comm, MPI_Barrier(), controldef::mype, graphdef::nnbrs, controldef::npes, graphdef::peind, printf(), graphdef::recvind, graphdef::recvptr, graphdef::sendind, and graphdef::sendptr.
Referenced by SetUp().
| void PrintTransferedGraphs | ( | CtrlType * | , | |
| int | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | ||||
| ) |
Definition at line 187 of file debug.c.
References controldef::comm, MPI_Barrier(), controldef::mype, controldef::npes, and printf().
Referenced by Moc_Global_CreateCoarseGraph().
Definition at line 18 of file comm.c.
References controldef::comm, MPI_Irecv(), MPI_Isend(), MPI_Waitall(), controldef::mype, graphdef::nnbrs, graphdef::peind, graphdef::recvind, graphdef::recvptr, controldef::rreq, graphdef::sendind, graphdef::sendptr, controldef::sreq, controldef::statuses, and graphdef::vtxdist.
Referenced by CompactGraph(), ComputeNodePartitionParams(), Mc_Local_CreateCoarseGraph(), Mc_LocalMatch_HEM(), Moc_ComputePartitionParams(), Moc_Global_CreateCoarseGraph(), Moc_GlobalMatch_Balance(), and Moc_MoveGraph().
| void CommChangedInterfaceData | ( | CtrlType * | , | |
| GraphType * | , | |||
| int | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| KeyValueType * | , | |||
| KeyValueType * | , | |||
| idxtype * | ||||
| ) |
Definition at line 59 of file comm.c.
References controldef::comm, KeyValueType::key, MPI_Get_count(), MPI_Irecv(), MPI_Isend(), MPI_Wait(), MPI_Waitall(), controldef::mype, n, graphdef::nnbrs, controldef::npes, graphdef::nrecv, graphdef::peadjloc, graphdef::peadjncy, graphdef::peind, graphdef::pexadj, graphdef::recvind, graphdef::recvptr, controldef::rreq, graphdef::sendptr, controldef::sreq, controldef::status, controldef::statuses, KeyValueType::val, and graphdef::vtxdist.
Referenced by KWayNodeRefine(), Moc_GlobalMatch_Balance(), Moc_KWayAdaptiveRefine(), Moc_KWayBalance(), and Moc_KWayFM().
Definition at line 128 of file comm.c.
References controldef::comm, max(), MPI_Allreduce(), MPI_INT, and MPI_MAX.
Referenced by Adaptive_Partition(), ComputeMoveStatistics(), Moc_Diffusion(), Moc_Global_Partition(), Order_Partition(), ParMETIS_V3_AdaptiveRepart(), ParMETIS_V3_Mesh2Dual(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), ParMETIS_V3_RefineKway(), and SetUp().
Definition at line 140 of file comm.c.
References controldef::comm, max(), MPI_Allreduce(), MPI_DOUBLE, and MPI_MAX.
Definition at line 154 of file comm.c.
References controldef::comm, min(), MPI_Allreduce(), MPI_INT, and MPI_MIN.
Referenced by Adaptive_Partition(), Moc_Global_Partition(), Order_Partition(), ParMETIS_V3_Mesh2Dual(), and SetUp().
Definition at line 166 of file comm.c.
References controldef::comm, MPI_Allreduce(), MPI_INT, and MPI_SUM.
Referenced by Adaptive_Partition(), ComputeMoveStatistics(), KWayNodeRefine(), Moc_ComputePartitionParams(), Moc_ComputeRefineStats(), Moc_Diffusion(), Moc_Global_Partition(), Moc_GlobalMatch_Balance(), Moc_KWayAdaptiveRefine(), Moc_KWayBalance(), Moc_KWayFM(), Moc_SetUpGraph(), Order_Partition(), ParallelTotalVReMap(), ParMETIS_V3_AdaptiveRepart(), ParMETIS_V3_NodeND(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), ParMETIS_V3_PartMeshKway(), ParMETIS_V3_RefineKway(), and WavefrontDiffusion().
Definition at line 179 of file comm.c.
References controldef::comm, max(), MPI_Allreduce(), MPI_DOUBLE, and MPI_MAX.
Referenced by Moc_Global_Partition().
Definition at line 193 of file comm.c.
References controldef::comm, min(), MPI_Allreduce(), MPI_DOUBLE, and MPI_MIN.
Referenced by Moc_Global_Partition().
Definition at line 205 of file comm.c.
References controldef::comm, MPI_Allreduce(), MPI_DOUBLE, and MPI_SUM.
| void myprintf | ( | CtrlType * | , | |
| char * | f_str, | |||
| ... | ||||
| ) |
Definition at line 41 of file util.c.
References controldef::mype.
Referenced by CheckMGraph(), Mc_Local_CreateCoarseGraph(), Mc_LocalMatch_HEM(), and Moc_GlobalMatch_Balance().
| void rprintf | ( | CtrlType * | , | |
| char * | f_str, | |||
| ... | ||||
| ) |
Definition at line 62 of file util.c.
References controldef::comm, MPI_Barrier(), and controldef::mype.
Referenced by Adaptive_Partition(), Balance_Partition(), KWayNodeRefine(), Mc_LocalMatch_HEM(), Moc_Global_CreateCoarseGraph(), Moc_Global_Partition(), Moc_GlobalMatch_Balance(), Moc_KWayAdaptiveRefine(), Moc_KWayBalance(), Moc_KWayFM(), Moc_MoveGraph(), Moc_SetUpGraph(), Order_Partition(), ParallelTotalVReMap(), ParMETIS_V3_AdaptiveRepart(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), ParMETIS_V3_PartMeshKway(), ParMETIS_V3_RefineKway(), and SetUp().
| void* GKmalloc | ( | int | , | |
| char * | ||||
| ) |
| void ikeyvalsort_org | ( | int | , | |
| KeyValueType * | ||||
| ) |
| int IncKeyValueCmp | ( | const void * | , | |
| const void * | ||||
| ) |
Definition at line 340 of file util.c.
References KeyValueType::key, n1, n2, and KeyValueType::val.
Referenced by ikeyvalsort_org().
| void dkeyvalsort | ( | int | , | |
| KeyValueType * | ||||
| ) |
| int DecKeyValueCmp | ( | const void * | , | |
| const void * | ||||
| ) |
Definition at line 364 of file util.c.
References KeyValueType::key, n1, and n2.
Referenced by dkeyvalsort().
Definition at line 433 of file util.c.
References RandomPermute().
Referenced by Mc_LocalMatch_HEM(), Moc_GlobalMatch_Balance(), Moc_KWayAdaptiveRefine(), Moc_KWayBalance(), Moc_KWayFM(), and WavefrontDiffusion().
Definition at line 512 of file util.c.
References max().
Referenced by Moc_Diffusion(), and Moc_Global_Partition().
Definition at line 605 of file util.c.
Referenced by Adaptive_Partition(), BalanceMyLink(), Moc_Diffusion(), Moc_Global_Partition(), Moc_KWayAdaptiveRefine(), Moc_KWayBalance(), Moc_KWayFM(), and RedoMyLink().
| int myvalkeycompare | ( | const void * | , | |
| const void * | ||||
| ) |
Definition at line 889 of file util.c.
References KVType::val.
Referenced by CSR_Match_SHEM(), Moc_DynamicSelectQueue(), and Moc_HashVwgts().
| int imyvalkeycompare | ( | const void * | , | |
| const void * | ||||
| ) |
Definition at line 928 of file util.c.
References GKmalloc(), and sset().
Referenced by Balance_Partition(), Moc_InitPartition_RB(), and ParMETIS_V3_NodeND().
Definition at line 940 of file util.c.
Referenced by Moc_ComputeSerialPartitionParams(), Moc_Serial_Balance2Way(), Moc_Serial_Compute2WayPartitionParams(), Moc_Serial_FM_2WayRefine(), Moc_Serial_Init2WayBalance(), and Moc_SerialKWayAdaptRefine().
Definition at line 32 of file myqsort.c.
References c, max(), min(), and siqst().
Referenced by KWayNodeRefine(), Moc_KWayAdaptiveRefine(), Moc_KWayBalance(), and Moc_KWayFM().
| void ikeysort | ( | int | , | |
| KeyValueType * | ||||
| ) |
Definition at line 291 of file myqsort.c.
References c, KeyValueType::key, keyiqst(), max(), min(), and printf().
Referenced by CompressGraph(), EliminateSubDomainEdges(), EliminateVolComponents(), EliminateVolSubDomainEdges(), Moc_GlobalMatch_Balance(), Moc_Serial_Balance2Way(), Moc_Serial_FM_2WayRefine(), Moc_Serial_Init2WayBalance(), Moc_SerialKWayAdaptRefine(), ParallelTotalVReMap(), ParMETIS_V3_Mesh2Dual(), PartSort(), SerialRemap(), SetUp(), and WavefrontDiffusion().
| void ikeyvalsort | ( | int | , | |
| KeyValueType * | ||||
| ) |
Definition at line 427 of file myqsort.c.
References c, KeyValueType::key, keyvaliqst(), max(), min(), and KeyValueType::val.
Referenced by Moc_Global_CreateCoarseGraph(), and PartSort().
| GraphType* Moc_SetUpGraph | ( | CtrlType * | , | |
| int | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| int * | ||||
| ) |
Definition at line 22 of file grsetup.c.
References graphdef::adjncy, graphdef::adjwgt, CreateGraph(), fmalloc(), GlobalSESum(), graphdef::gnvtxs, idxsmalloc(), graphdef::level, MPI_Finalize(), controldef::mype, graphdef::ncon, graphdef::nedges, controldef::npes, graphdef::nvtxs, graphdef::nvwgt, rprintf(), controldef::seed, controldef::tvwgts, graphdef::vtxdist, graphdef::vwgt, and graphdef::xadj.
Referenced by ParMETIS_V3_AdaptiveRepart(), ParMETIS_V3_NodeND(), ParMETIS_V3_PartGeom(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), and ParMETIS_V3_RefineKway().
Definition at line 85 of file grsetup.c.
References controldef::comm, controldef::dbglvl, controldef::gcomm, MPI_Comm_dup(), MPI_Comm_rank(), MPI_Comm_size(), controldef::mype, controldef::nparts, controldef::npes, and controldef::xyztype.
Referenced by ParMETIS_SerialNodeND(), ParMETIS_V3_AdaptiveRepart(), ParMETIS_V3_Mesh2Dual(), ParMETIS_V3_NodeND(), ParMETIS_V3_PartGeom(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), ParMETIS_V3_PartMeshKway(), and ParMETIS_V3_RefineKway().
Definition at line 104 of file grsetup.c.
Referenced by ParMETIS_SerialNodeND(), ParMETIS_V3_AdaptiveRepart(), ParMETIS_V3_NodeND(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), and ParMETIS_V3_RefineKway().
| void ChangeNumberingMesh2 | ( | idxtype * | elmdist, | |
| idxtype * | eptr, | |||
| idxtype * | eind, | |||
| idxtype * | xadj, | |||
| idxtype * | adjncy, | |||
| idxtype * | part, | |||
| int | npes, | |||
| int | mype, | |||
| int | from | |||
| ) |
Definition at line 182 of file grsetup.c.
References meshdef::nelms.
Referenced by ParMETIS_V3_Mesh2Dual().
| void GraphRandomPermute | ( | GraphType * | ) |
Definition at line 228 of file grsetup.c.
References graphdef::adjncy, graphdef::adjwgt, graphdef::nvtxs, and graphdef::xadj.
Definition at line 246 of file grsetup.c.
References controldef::comm, GKfree(), GlobalSEMax(), GlobalSESum(), idxsmalloc(), MPI_Allreduce(), MPI_SUM, controldef::mype, controldef::nparts, graphdef::nvtxs, graphdef::vwgt, and graphdef::where.
| void InitTimers | ( | CtrlType * | ) |
Definition at line 21 of file timing.c.
References controldef::AuxTmr1, controldef::AuxTmr2, controldef::AuxTmr3, controldef::AuxTmr4, controldef::AuxTmr5, controldef::AuxTmr6, controldef::CoarsenTmr, controldef::ContractTmr, controldef::InitPartTmr, controldef::KWayInitTmr, controldef::KWayTmr, controldef::MatchTmr, controldef::MoveTmr, controldef::ProjectTmr, controldef::RefTmr, controldef::RemapTmr, controldef::SepTmr, controldef::SetupTmr, controldef::SplitTmr, controldef::TotalTmr, and controldef::UncoarsenTmr.
| void PrintTimingInfo | ( | CtrlType * | ) |
Definition at line 50 of file timer.c.
References controldef::AuxTmr1, controldef::AuxTmr2, controldef::AuxTmr3, controldef::AuxTmr4, controldef::AuxTmr5, controldef::AuxTmr6, controldef::ContractTmr, controldef::InitPartTmr, controldef::KWayInitTmr, controldef::KWayTmr, controldef::MatchTmr, controldef::MoveTmr, PrintTimer(), controldef::ProjectTmr, controldef::RemapTmr, controldef::SetupTmr, and controldef::TotalTmr.
Referenced by ParMETIS_SerialNodeND(), ParMETIS_V3_AdaptiveRepart(), ParMETIS_V3_NodeND(), ParMETIS_V3_PartGeom(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), and ParMETIS_V3_RefineKway().
Definition at line 76 of file timer.c.
References controldef::comm, max(), MPI_DOUBLE, MPI_MAX, MPI_Reduce(), MPI_SUM, controldef::mype, controldef::npes, and printf().
Referenced by ParMETIS_V3_PartMeshKway(), and PrintTimingInfo().
| void SetUp | ( | CtrlType * | , | |
| GraphType * | , | |||
| WorkSpaceType * | ||||
| ) |
Definition at line 25 of file setup.c.
References graphdef::adjncy, controldef::comm, controldef::dbglvl, free(), GKmalloc(), GlobalSEMax(), GlobalSEMin(), graphdef::gnvtxs, idxmalloc(), idxset(), idxsmalloc(), ikeysort(), graphdef::imap, workspacedef::indices, KeyValueType::key, graphdef::lperm, MPI_Alltoall(), MPI_Barrier(), MPI_Irecv(), MPI_Isend(), MPI_Waitall(), controldef::mype, workspacedef::nlarge, graphdef::nlocal, graphdef::nnbrs, controldef::npes, graphdef::nrecv, graphdef::nsend, graphdef::nvtxs, workspacedef::pairs, graphdef::peadjloc, graphdef::peadjncy, graphdef::peind, workspacedef::pepairs1, workspacedef::pepairs2, graphdef::pexadj, PrintSetUpInfo(), workspacedef::pv1, workspacedef::pv2, graphdef::recvind, graphdef::recvptr, rprintf(), controldef::rreq, graphdef::sendind, graphdef::sendptr, controldef::SetupTmr, controldef::sreq, controldef::statuses, KeyValueType::val, graphdef::vtxdist, and graphdef::xadj.
Referenced by Adaptive_Partition(), Coordinate_Partition(), Moc_Global_Partition(), MultilevelOrder(), Order_Partition(), and PartitionSmallGraph().
| void METIS_WPartGraphKway2 | ( | int * | , | |
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| int * | , | |||
| int * | , | |||
| int * | , | |||
| floattype * | , | |||
| int * | , | |||
| int * | , | |||
| idxtype * | ||||
| ) |
Definition at line 44 of file parmetis.c.
References AllocateWorkSpace(), Change2CNumbering(), Change2FNumbering(), controldef::CoarsenTo, controldef::CType, controldef::dbglvl, FreeWorkSpace(), idxsum(), InitRandom(), InitTimers(), controldef::IType, controldef::maxvwgt, MlevelKWayPartitioning(), controldef::optype, PrintTimers(), controldef::RType, SetUpGraph(), controldef::TotalTmr, and graphdef::vwgt.
Referenced by Balance_Partition(), METIS_PartGraphKway2(), Moc_InitPartition_RB(), and PartitionSmallGraph().
| void METIS_mCPartGraphRecursive2 | ( | int * | , | |
| int * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| int * | , | |||
| int * | , | |||
| int * | , | |||
| floattype * | , | |||
| int * | , | |||
| int * | , | |||
| idxtype * | ||||
| ) |
Definition at line 378 of file parmetis.c.
References AllocateWorkSpace(), Change2CNumbering(), Change2FNumbering(), CheckGraph(), controldef::CoarsenTo, controldef::CType, controldef::dbglvl, fmalloc(), FreeWorkSpace(), GKfree(), InitRandom(), InitTimers(), controldef::IType, MCMlevelRecursiveBisection2(), controldef::nmaxvwgt, graphdef::npwgts, controldef::optype, PrintTimers(), controldef::RType, SetUpGraph(), and controldef::TotalTmr.
Referenced by Balance_Partition(), Moc_InitPartition_RB(), ParMETIS_V3_PartGeomKway(), ParMETIS_V3_PartKway(), and PartitionSmallGraph().
| int MCMlevelRecursiveBisection2 | ( | CtrlType * | , | |
| GraphType * | , | |||
| int | , | |||
| floattype * | , | |||
| idxtype * | , | |||
| floattype | , | |||
| int | ||||
| ) |
Definition at line 463 of file parmetis.c.
References graphdef::gdata, GKfree(), graphdef::label, MCMlevelEdgeBisection(), MCMlevelRecursiveBisection2(), graphdef::mincut, graphdef::npwgts, graphdef::nvtxs, graphdef::nvwgt, graphdef::rdata, SplitGraphPart(), sscale(), ssum(), and graphdef::where.
Referenced by MCMlevelRecursiveBisection2(), and METIS_mCPartGraphRecursive2().
| void METIS_mCPartGraphKway | ( | int * | , | |
| int * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| int * | , | |||
| int * | , | |||
| int * | , | |||
| floattype * | , | |||
| int * | , | |||
| int * | , | |||
| idxtype * | ||||
| ) |
Definition at line 23 of file mkmetis.c.
References AllocateWorkSpace(), Change2CNumbering(), Change2FNumbering(), CheckGraph(), controldef::CoarsenTo, controldef::CType, controldef::dbglvl, FreeWorkSpace(), InitRandom(), InitTimers(), controldef::IType, log2Int(), MCMlevelKWayPartitioning(), controldef::nmaxvwgt, controldef::optype, PrintTimers(), controldef::RType, SetUpGraph(), and controldef::TotalTmr.
| void METIS_EdgeComputeSeparator | ( | int * | , | |
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| int * | , | |||
| int * | , | |||
| idxtype * | ||||
| ) |
Definition at line 320 of file parmetis.c.
References AllocateWorkSpace(), controldef::CoarsenTo, ConstructMinCoverSeparator(), controldef::CType, controldef::dbglvl, FreeWorkSpace(), graphdef::gdata, GKfree(), idxsum(), InitRandom(), controldef::IType, graphdef::label, controldef::maxvwgt, MlevelEdgeBisection(), controldef::nseps, controldef::oflags, controldef::optype, controldef::pfactor, graphdef::pwgts, graphdef::rdata, controldef::RType, SetUpGraph(), graphdef::vwgt, and graphdef::where.
Referenced by InitMultisection().
| void METIS_NodeComputeSeparator | ( | int * | , | |
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| int * | , | |||
| int * | , | |||
| idxtype * | ||||
| ) |
Definition at line 262 of file parmetis.c.
References AllocateWorkSpace(), controldef::CoarsenTo, controldef::CType, controldef::dbglvl, FreeWorkSpace(), graphdef::gdata, GKfree(), idxsum(), InitRandom(), controldef::IType, graphdef::label, controldef::maxvwgt, MlevelNodeBisectionMultiple(), controldef::nseps, controldef::oflags, controldef::optype, controldef::pfactor, graphdef::pwgts, graphdef::rdata, controldef::RType, SetUpGraph(), graphdef::vwgt, and graphdef::where.
Referenced by InitMultisection().
Definition at line 79 of file ometis.c.
References AllocateWorkSpace(), Change2CNumbering(), Change2FNumberingOrder(), controldef::CoarsenTo, CompressGraph(), controldef::CType, controldef::dbglvl, FreeWorkSpace(), GKfree(), idxmalloc(), idxsum(), InitRandom(), InitTimers(), controldef::IType, controldef::maxvwgt, MlevelNestedDissection(), MlevelNestedDissectionCC(), controldef::nseps, graphdef::nvtxs, controldef::oflags, controldef::optype, controldef::pfactor, PrintTimers(), PruneGraph(), controldef::RType, SetUpGraph(), controldef::TotalTmr, and graphdef::vwgt.
Referenced by LocalNDOrder(), metis_nodend(), METIS_NODEND(), metis_nodend_(), and metis_nodend__().
| void METIS_NodeNDP | ( | int | , | |
| idxtype * | , | |||
| idxtype * | , | |||
| int | , | |||
| int * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | ||||
| ) |
Definition at line 95 of file parmetis.c.
References AllocateWorkSpace(), controldef::CoarsenTo, CompressGraph(), controldef::CType, controldef::dbglvl, FreeWorkSpace(), GKfree(), idxmalloc(), idxset(), idxsum(), InitRandom(), InitTimers(), controldef::IType, controldef::maxvwgt, MlevelNestedDissectionP(), controldef::nseps, graphdef::nvtxs, controldef::oflags, controldef::optype, controldef::pfactor, PrintTimers(), controldef::RType, SetUpGraph(), controldef::TotalTmr, and graphdef::vwgt.
Referenced by ParMETIS_SerialNodeND().
| void Moc_SerialReadMetisGraph | ( | char * | , | |
| int * | , | |||
| int * | , | |||
| int * | , | |||
| int * | , | |||
| idxtype ** | , | |||
| idxtype ** | , | |||
| idxtype ** | , | |||
| idxtype ** | , | |||
| int * | ||||
| ) |
| void TestParMetis | ( | char * | , | |
| MPI_Comm | ||||
| ) |
| void TestParMetis_V3 | ( | char * | , | |
| MPI_Comm | ||||
| ) |
| GraphType* SetUpGraph | ( | CtrlType * | , | |
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| idxtype * | , | |||
| int | ||||
| ) |
1.5.5