Your company here ā€” click to reach over 10,000 unique daily visitors

gpmetis - Man Page

Partitions a graph into a specified number of parts.


gpmetis [options] graphfile nparts


Required parameters


Stores the graph to be partitioned.


The number of partitions to split the graph.

Optional parameters


Specifies the scheme to be used for computing the k-way partitioning. The possible values are:


- Recursive bisectioning


- Direct k-way partitioning [default]


Specifies the scheme to be used to match the vertices of the graph during the coarsening. The possible values are:


- Random matching


- Sorted heavy-edge matching [default]

-iptype=string [applies only when -ptype=rb]

Specifies the scheme to be used to compute the initial partitioning of the graph. The possible values are:


- Grow a bisection using a greedy scheme [default for ncon=1]


- Compute a bisection at random [default for ncon>1]

-objtype=string [applies only when -ptype=kway]

Specifies the objective that the partitioning routines will optimize. The possible values are:


- Minimize the edgecut [default]


- Minimize the total communication volume


Specifies that the coarsening will not perform any 2-hop matchings when the standard matching fails to sufficiently contract the graph.

-contig [applies only when -ptype=kway]

Specifies that the partitioning routines should try to produce partitions that are contiguous. Note that if the input graph is not connected this option is ignored.

-minconn [applies only when -ptype=kway]

Specifies that the partitioning routines should try to minimize the maximum degree of the subdomain graph, i.e., the graph in which each partition is a node, and edges connect subdomains with a shared interface.


Specifies the name of the file that stores the target weights for each partition. By default, all partitions are assumed to be of the same size.


Specifies the maximum allowed load imbalance among the partitions. A value of x indicates that the allowed load imbalance is 1+x/1000. For ptype=rb, the load imbalance is measured as the ratio of the 2*max(left,right)/(left+right), where left and right are the sizes of the respective partitions at each bisection. For ptype=kway, the load imbalance is measured as the ratio of max_i(pwgts[i])/avgpwgt, where pwgts[i] is the weight of the ith partition and avgpwgt is the sum of the total vertex weights divided by the number of partitions requested. For ptype=rb, the default value is 1 (i.e., load imbalance of 1.001). For ptype=kway, the default value is 30 (i.e., load imbalance of 1.03).


Applies only for multi-constraint partitioning and specifies the per constraint allowed load imbalance among partitions. The required parameter corresponds to a space separated set of floating point numbers, one for each of the constraints. For example, for three constraints, the string can be "1.02 1.2 1.35" indicating a desired maximum load imbalance of 2%, 20%, and 35%, respectively. The load imbalance is defined in a way similar to ufactor. If supplied, this parameter takes priority over ufactor.


Specifies the number of iterations for the refinement algorithms at each stage of the uncoarsening process. Default is 10.


Specifies the number of different partitionings that it will compute. The final partitioning is the one that achieves the best edgecut or communication volume. Default is 1.


Specifies that no partitioning file should be generated.


Selects the seed of the random number generator.


Selects the dbglvl.


Prints this message.


January 2024 gpmetis