Metis graph structure. More...
#include <parmetis_dist_util.hpp>
Data Fields | |
idx_t * | nvtxs |
The number of vertices in the graph. | |
idx_t * | ncon |
idx_t * | xadj |
For each vertex it store the adjacency lost start for the vertex i. | |
idx_t * | adjncy |
For each vertex it store a list of all neighborhood vertex. | |
idx_t * | vwgt |
Array that store the weight for each vertex. | |
idx_t * | vsize |
Array of the vertex size, basically is the total communication amount. | |
idx_t * | adjwgt |
The weight of the edge. | |
idx_t * | nparts |
number of part to partition the graph | |
real_t * | tpwgts |
Desired weight for each partition (one for each constrain) | |
real_t * | ubvec |
For each partition load imbalance tollerated. | |
idx_t * | options |
Additional option for the graph partitioning. | |
idx_t * | objval |
return the total comunication cost for each partition | |
idx_t * | part |
Is a output vector containing the partition for each vertex. | |
idx_t * | edgecut |
Upon successful completion, the number of edges that are cut by the partitioning is written to this parameter. | |
real_t * | itr |
This parameter describes the ratio of inter-processor communication time compared to data redistri- bution time. It should be set between 0.000001 and 1000000.0. If ITR is set high, a repartitioning with a low edge-cut will be computed. If it is set low, a repartitioning that requires little data redistri- bution will be computed. Good values for this parameter can be obtained by dividing inter-processor communication time by data redistribution time. Otherwise, a value of 1000.0 is recommended. | |
idx_t * | numflag |
This is used to indicate the numbering scheme that is used for the vtxdist, xadj, adjncy, and part arrays. (0 for C-style, start from 0 index) | |
idx_t * | wgtflag |
idx_t* Parmetis_dist_graph::adjncy |
For each vertex it store a list of all neighborhood vertex.
Definition at line 36 of file parmetis_dist_util.hpp.
idx_t* Parmetis_dist_graph::adjwgt |
The weight of the edge.
Definition at line 45 of file parmetis_dist_util.hpp.
idx_t* Parmetis_dist_graph::edgecut |
Upon successful completion, the number of edges that are cut by the partitioning is written to this parameter.
Definition at line 66 of file parmetis_dist_util.hpp.
real_t* Parmetis_dist_graph::itr |
This parameter describes the ratio of inter-processor communication time compared to data redistri- bution time. It should be set between 0.000001 and 1000000.0. If ITR is set high, a repartitioning with a low edge-cut will be computed. If it is set low, a repartitioning that requires little data redistri- bution will be computed. Good values for this parameter can be obtained by dividing inter-processor communication time by data redistribution time. Otherwise, a value of 1000.0 is recommended.
Definition at line 69 of file parmetis_dist_util.hpp.
idx_t* Parmetis_dist_graph::ncon |
number of balancing constrains more practical, are the number of weights for each vertex PS even we you specify vwgt == NULL ncon must be set at leat to one
Definition at line 30 of file parmetis_dist_util.hpp.
idx_t* Parmetis_dist_graph::nparts |
number of part to partition the graph
Definition at line 48 of file parmetis_dist_util.hpp.
idx_t* Parmetis_dist_graph::numflag |
This is used to indicate the numbering scheme that is used for the vtxdist, xadj, adjncy, and part arrays. (0 for C-style, start from 0 index)
Definition at line 72 of file parmetis_dist_util.hpp.
idx_t* Parmetis_dist_graph::nvtxs |
The number of vertices in the graph.
Definition at line 24 of file parmetis_dist_util.hpp.
idx_t* Parmetis_dist_graph::objval |
return the total comunication cost for each partition
Definition at line 60 of file parmetis_dist_util.hpp.
idx_t* Parmetis_dist_graph::options |
Additional option for the graph partitioning.
Definition at line 57 of file parmetis_dist_util.hpp.
idx_t* Parmetis_dist_graph::part |
Is a output vector containing the partition for each vertex.
Definition at line 63 of file parmetis_dist_util.hpp.
real_t* Parmetis_dist_graph::tpwgts |
Desired weight for each partition (one for each constrain)
Definition at line 51 of file parmetis_dist_util.hpp.
real_t* Parmetis_dist_graph::ubvec |
For each partition load imbalance tollerated.
Definition at line 54 of file parmetis_dist_util.hpp.
idx_t* Parmetis_dist_graph::vsize |
Array of the vertex size, basically is the total communication amount.
Definition at line 42 of file parmetis_dist_util.hpp.
idx_t* Parmetis_dist_graph::vwgt |
Array that store the weight for each vertex.
Definition at line 39 of file parmetis_dist_util.hpp.
idx_t* Parmetis_dist_graph::wgtflag |
This is used to indicate if the graph is weighted. wgtflag can take one of four values: 0 No weights (vwgt and adjwgt are both NULL). 1 Weights on the edges only (vwgt is NULL). 2 Weights on the vertices only (adjwgt is NULL). 3 Weights on both the vertices and edges.
Definition at line 79 of file parmetis_dist_util.hpp.
idx_t* Parmetis_dist_graph::xadj |
For each vertex it store the adjacency lost start for the vertex i.
Definition at line 33 of file parmetis_dist_util.hpp.