diff options
Diffstat (limited to 'benchmarks/CUDA/DG/3rdParty/ParMetis-3.1/ParMETISLib/mmetis.c')
| -rw-r--r-- | benchmarks/CUDA/DG/3rdParty/ParMetis-3.1/ParMETISLib/mmetis.c | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/benchmarks/CUDA/DG/3rdParty/ParMetis-3.1/ParMETISLib/mmetis.c b/benchmarks/CUDA/DG/3rdParty/ParMetis-3.1/ParMETISLib/mmetis.c deleted file mode 100644 index b262ed1..0000000 --- a/benchmarks/CUDA/DG/3rdParty/ParMetis-3.1/ParMETISLib/mmetis.c +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright 1997, Regents of the University of Minnesota - * - * mmetis.c - * - * This is the entry point of ParMETIS_V3_PartMeshKway - * - * Started 10/19/96 - * George - * - * $Id: mmetis.c,v 1.8 2003/07/25 04:01:04 karypis Exp $ - * - */ - -#include <parmetislib.h> - - -/*********************************************************************************** -* This function is the entry point of the parallel k-way multilevel mesh partitionioner. -* This function assumes nothing about the mesh distribution. -* It is the general case. -************************************************************************************/ -void ParMETIS_V3_PartMeshKway(idxtype *elmdist, idxtype *eptr, idxtype *eind, idxtype *elmwgt, - int *wgtflag, int *numflag, int *ncon, int *ncommonnodes, int *nparts, - float *tpwgts, float *ubvec, int *options, int *edgecut, idxtype *part, - MPI_Comm *comm) -{ - int i, nvtxs, nedges, gnedges, npes, mype; - idxtype *xadj, *adjncy; - timer TotalTmr, Mesh2DualTmr, ParMETISTmr; - CtrlType ctrl; - - /********************************/ - /* Try and take care bad inputs */ - /********************************/ - if (elmdist == NULL || eptr == NULL || eind == NULL || wgtflag == NULL || - numflag == NULL || ncon == NULL || ncommonnodes == NULL || nparts == NULL || - tpwgts == NULL || ubvec == NULL || options == NULL || edgecut == NULL || - part == NULL || comm == NULL) { - printf("ERROR: One or more required parameters is NULL. Aborting.\n"); - abort(); - } - if (((*wgtflag)&2) && elmwgt == NULL) { - printf("ERROR: elmwgt == NULL when vertex weights were specified. Aborting.\n"); - abort(); - } - - - SetUpCtrl(&ctrl, *nparts, (options[0] == 1 ? options[PMV3_OPTION_DBGLVL] : 0), *comm); - npes = ctrl.npes; - mype = ctrl.mype; - - cleartimer(TotalTmr); - cleartimer(Mesh2DualTmr); - cleartimer(ParMETISTmr); - - MPI_Barrier(ctrl.comm); - starttimer(TotalTmr); - starttimer(Mesh2DualTmr); - - ParMETIS_V3_Mesh2Dual(elmdist, eptr, eind, numflag, ncommonnodes, &xadj, &adjncy, &(ctrl.comm)); - - if (ctrl.dbglvl&DBG_INFO) { - nvtxs = elmdist[mype+1]-elmdist[mype]; - nedges = xadj[nvtxs] + (*numflag == 0 ? 0 : -1); - rprintf(&ctrl, "Completed Dual Graph -- Nvtxs: %d, Nedges: %d \n", - elmdist[npes], GlobalSESum(&ctrl, nedges)); - } - - MPI_Barrier(ctrl.comm); - stoptimer(Mesh2DualTmr); - - - /***********************/ - /* Partition the graph */ - /***********************/ - starttimer(ParMETISTmr); - - ParMETIS_V3_PartKway(elmdist, xadj, adjncy, elmwgt, NULL, wgtflag, numflag, ncon, - nparts, tpwgts, ubvec, options, edgecut, part, &(ctrl.comm)); - - MPI_Barrier(ctrl.comm); - stoptimer(ParMETISTmr); - stoptimer(TotalTmr); - - IFSET(ctrl.dbglvl, DBG_TIME, PrintTimer(&ctrl, Mesh2DualTmr, " Mesh2Dual")); - IFSET(ctrl.dbglvl, DBG_TIME, PrintTimer(&ctrl, ParMETISTmr, " ParMETIS")); - IFSET(ctrl.dbglvl, DBG_TIME, PrintTimer(&ctrl, TotalTmr, " Total")); - - GKfree((void **)&xadj, (void **)&adjncy, LTERM); - - FreeCtrl(&ctrl); - - return; -} |
