Functions
parmetis.c File Reference
#include "metislib.h"
Include dependency graph for parmetis.c:

Go to the source code of this file.

Functions

void FM_2WayNodeRefine1SidedP (ctrl_t *ctrl, graph_t *graph, idx_t *hmarker, real_t ubfactor, idx_t npasses)
 
void FM_2WayNodeRefine2SidedP (ctrl_t *ctrl, graph_t *graph, idx_t *hmarker, real_t ubfactor, idx_t npasses)
 
int METIS_ComputeVertexSeparator (idx_t *nvtxs, idx_t *xadj, idx_t *adjncy, idx_t *vwgt, idx_t *options, idx_t *r_sepsize, idx_t *part)
 
int METIS_NodeNDP (idx_t nvtxs, idx_t *xadj, idx_t *adjncy, idx_t *vwgt, idx_t npes, idx_t *options, idx_t *perm, idx_t *iperm, idx_t *sizes)
 
int METIS_NodeRefine (idx_t nvtxs, idx_t *xadj, idx_t *vwgt, idx_t *adjncy, idx_t *where, idx_t *hmarker, real_t ubfactor)
 
void MlevelNestedDissectionP (ctrl_t *ctrl, graph_t *graph, idx_t *order, idx_t lastvtx, idx_t npes, idx_t cpos, idx_t *sizes)
 

Function Documentation

◆ FM_2WayNodeRefine1SidedP()

void FM_2WayNodeRefine1SidedP ( ctrl_t ctrl,
graph_t graph,
idx_t hmarker,
real_t  ubfactor,
idx_t  npasses 
)

This function performs a node-based 1-sided FM refinement that moves only nodes whose hmarker[] == -1. It is used by Parmetis.

Definition at line 237 of file parmetis.c.

◆ FM_2WayNodeRefine2SidedP()

void FM_2WayNodeRefine2SidedP ( ctrl_t ctrl,
graph_t graph,
idx_t hmarker,
real_t  ubfactor,
idx_t  npasses 
)

This function performs a node-based (two-sided) FM refinement that moves only nodes whose hmarker[] == -1. It is used by Parmetis.

Definition at line 467 of file parmetis.c.

◆ METIS_ComputeVertexSeparator()

int METIS_ComputeVertexSeparator ( idx_t nvtxs,
idx_t xadj,
idx_t adjncy,
idx_t vwgt,
idx_t options,
idx_t r_sepsize,
idx_t part 
)

This function bisects a graph by computing a vertex separator

Definition at line 161 of file parmetis.c.

◆ METIS_NodeNDP()

int METIS_NodeNDP ( idx_t  nvtxs,
idx_t xadj,
idx_t adjncy,
idx_t vwgt,
idx_t  npes,
idx_t options,
idx_t perm,
idx_t iperm,
idx_t sizes 
)

This function is the entry point for the node ND code for ParMETIS. The difference between this routine and the standard METIS_NodeND are the following

  • It performs at least log2(npes) levels of nested dissection.
  • It stores the size of the log2(npes) top-level separators in the sizes array.

Definition at line 28 of file parmetis.c.

◆ METIS_NodeRefine()

int METIS_NodeRefine ( idx_t  nvtxs,
idx_t xadj,
idx_t vwgt,
idx_t adjncy,
idx_t where,
idx_t hmarker,
real_t  ubfactor 
)

This function is the entry point of a node-based separator refinement of the nodes with an hmarker[] of 0.

Definition at line 199 of file parmetis.c.

◆ MlevelNestedDissectionP()

void MlevelNestedDissectionP ( ctrl_t ctrl,
graph_t graph,
idx_t order,
idx_t  lastvtx,
idx_t  npes,
idx_t  cpos,
idx_t sizes 
)

This function is similar to MlevelNestedDissection with the difference that it also records separator sizes for the top log2(npes) levels

Definition at line 105 of file parmetis.c.



gtsam
Author(s):
autogenerated on Sun Dec 22 2024 04:18:31