summaryrefslogtreecommitdiff
path: root/benchmarks/CUDA/DG/3rdParty/ParMetis-3.1/ParMETISLib/mmetis.c
diff options
context:
space:
mode:
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.c95
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;
-}