GPMETIS(1)

โœจ GPMETIS โœจ

okay bestie, gather round, because this one is literally the graph-partitioning queen ๐Ÿ‘‘ and she's about to slice your graph into however many parts you want. no cap. (also she lives in the User Commands section of the manual, iykyk ๐Ÿ’…)


๐ŸŒธ SYNOPSIS ๐ŸŒธ

gpmetis [options] graphfile nparts

๐Ÿ’– DESCRIPTION ๐Ÿ’–

๐Ÿซถ the required parameters (you literally cannot skip these)

  • graphfile โ€” this is where your graph is at. it stores the graph that's about to get partitioned. your main character file, fr.
  • nparts โ€” the number of partitions you wanna split that graph into. that's it. that's the number.

โœจ the optional parameters โœจ (the fun part, the accessories to your fit)

  • -ptype=string โ€” tells it which scheme to use for computing the k-way partitioning. possible values:
    • rb โ€” Recursive bisectioning
    • kway โ€” Direct k-way partitioning [default]
  • -ctype=string โ€” picks the scheme used to match the vertices of the graph during the coarsening. possible values:
    • rm โ€” Random matching
    • shem โ€” Sorted heavy-edge matching [default]
  • -iptype=string [applies only when -ptype=rb] โ€” picks the scheme used to compute the initial partitioning of the graph. possible values:
    • 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] โ€” says what objective the partitioning routines will optimize. possible values:
    • cut โ€” Minimize the edgecut [default]
    • vol โ€” Minimize the total communication volume
  • -no2hop โ€” says the coarsening will not perform any 2-hop matchings when the standard matching fails to sufficiently contract the graph. lowkey a "no shortcuts today" flag.
  • -contig [applies only when -ptype=kway] โ€” says the partitioning routines should try to produce partitions that are contiguous. โš ๏ธ heads up bestie: if the input graph is not connected, this option is ignored. so it's giving "only if it can".
  • -minconn [applies only when -ptype=kway] โ€” says 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. she's networking, literally.
  • -tpwgts=filename โ€” names the file that stores the target weights for each partition. by default, all partitions are assumed to be of the same size. (equal parts, no favoritism ๐ŸŽ€)
  • -ufactor=int โ€” sets the max allowed load imbalance among the partitions. a value of x means the allowed load imbalance is 1+x/1000. For ptype=rb, the load imbalance is measured as the ratio of 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 *i*th 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). math queen ๐Ÿงฎโœจ
  • -ubvec=string โ€” 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. ๐Ÿ‘‘ she overrides.
  • -niter=int โ€” sets the number of iterations for the refinement algorithms at each stage of the uncoarsening process. default is 10.
  • -ncuts=int โ€” sets the number of different partitionings it will compute. the final partitioning is the one that achieves the best edgecut or communication volume. default is 1.
  • -nooutput โ€” says no partitioning file should be generated. stealth mode ๐Ÿฅท
  • -seed=int โ€” selects the seed of the random number generator.
  • -dbglvl=int โ€” selects the dbglvl.
  • -help โ€” prints this message. (hey, that's us! ๐Ÿซถ)
ngl, some of these flags only do anything when paired with the right -ptype. read the little brackets, bestie, they're there for a reason. ๐Ÿ’€

and that's the whole vibe check, fr fr. ๐ŸŒˆโœจ

this page is gpmetis version 5.1.0.3, dated July 2025. slay, go partition something. ๐Ÿ’…๐ŸŽ€๐Ÿฆ‹

๐Ÿ“ฆ where this page comes from