22 int main(
int argc,
char *argv[])
49 if (graph->
ncon != 1) {
50 printf(
"***The input graph contains %"PRIDX" constraints..\n" 51 "***Ordering requires a graph with one constraint.\n", graph->
ncon);
78 options, perm, iperm);
82 printf(
"***It seems that Metis did not free all of its memory! Report this.\n");
88 printf(
"\n***Metis returned with an error.\n");
114 printf(
"******************************************************************************\n");
116 printf(
" (HEAD: %s, Built on: %s, %s)\n", SVNINFO, __DATE__, __TIME__);
117 printf(
" size of idx_t: %zubits, real_t: %zubits, idx_t *: %zubits\n",
120 printf(
"Graph Information -----------------------------------------------------------\n");
121 printf(
" Name: %s, #Vertices: %"PRIDX", #Edges: %"PRIDX"\n",
125 printf(
"Options ---------------------------------------------------------------------\n");
126 printf(
" ctype=%s, rtype=%s, iptype=%s, seed=%"PRIDX
", dbglvl=%"PRIDX
"\n",
130 printf(
" ufactor=%.3f, pfactor=%.2f, no2hop=%s, ccorder=%s, compress=%s, , nooutput=%s\n",
133 (params->
no2hop ?
"YES" :
"NO"),
134 (params->
ccorder ?
"YES" :
"NO"),
139 printf(
" niter=%"PRIDX
", nseps=%"PRIDX
"\n", params->
niter, params->
nseps);
142 printf(
"Node-based Nested Dissection ------------------------------------------------\n");
156 printf(
" Nonzeros: %6.3le \tOperation Count: %6.3le\n", (
double)maxlnz, (
double)opc);
161 printf(
"\nTiming Information ----------------------------------------------------------\n");
165 printf(
"\nMemory Information ----------------------------------------------------------\n");
167 printf(
"******************************************************************************\n");
#define I2RUBFACTOR(ufactor)
#define gk_startcputimer(tmr)
#define gk_stopcputimer(tmr)
static char rtypenames[][15]
size_t gk_GetMaxMemoryUsed()
void NDReportResults(params_t *params, graph_t *graph, idx_t *perm, idx_t *iperm)
idx_t idx_t idx_t idx_t idx_t idx_t * iperm
int main(int argc, char *argv[])
NonlinearFactorGraph graph
int METIS_SetDefaultOptions(idx_t *options)
static const SmartProjectionParams params
int METIS_NodeND(idx_t *nvtxs, idx_t *xadj, idx_t *adjncy, idx_t *vwgt, idx_t *options, idx_t *perm, idx_t *iperm)
params_t * parse_cmdline(int argc, char *argv[])
size_t gk_GetCurMemoryUsed()
idx_t idx_t idx_t idx_t idx_t * perm
void gk_malloc_cleanup(int showstats)
#define gk_getcputimer(tmr)
graph_t * ReadGraph(params_t *params)
static char iptypenames[][15]
void gk_free(void **ptr1,...)
static char ctypenames[][15]
void NDPrintInfo(params_t *params, graph_t *graph)
void ComputeFillIn(graph_t *graph, idx_t *perm, idx_t *iperm, size_t *r_maxlnz, size_t *r_opc)
void WritePermutation(char *fname, idx_t *iperm, idx_t n)