GPMETIS
Section: User Commands (1)
Updated: August 2020
Page Index
NAME
gpmetis  Partitions a graph into a specified number of parts.
SYNOPSIS
gpmetis
[
,options/]
,graphfile nparts/
DESCRIPTION

Required parameters
 graphfile

Stores the graph to be partitioned.
 nparts

The number of partitions to split the graph.

Optional parameters

ptype=,string/

 Specifies the scheme to be used for computing the kway partitioning.
The possible values are:
 rb

 Recursive bisectioning
 kway

 Direct kway partitioning [default]

ctype=,string/

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

 Random matching
 shem

 Sorted heavyedge 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

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

 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:
 cut

 Minimize the edgecut [default]
 vol

 Minimize the total communication volume

no2hop

 Specifies that the coarsening will not perform any 2hop 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.

tpwgts=,filename/

 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.

ufactor=,int/

 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).

ubvec=,string/

 Applies only for multiconstraint 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.

niter=,int/

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

ncuts=,int/

 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.

nooutput

 Specifies that no partitioning file should be generated.

seed=,int/

 Selects the seed of the random number generator.

dbglvl=,int/

 Selects the dbglvl.

help

 Prints this message.