Quickstart Guide#
cuopt_cli is built as part of the libcuopt package. Choose your install method below; the selector is pre-set for the CLI (it uses the same libcuopt install). Copy the command and run it in your environment. See Installation for all interfaces and options.
Installation#
To see all available options and their descriptions:
cuopt_cli --help
This will display the complete list of command-line arguments and their usage:
1Usage: cuopt_cli [--help] [--version] [--initial-solution VAR] [--relaxation] [--params-file VAR] [--mps-reader VAR] [--dump-hyper-params] [--dump-params] [--pdlp-precision VAR] [--iteration-limit VAR] [--node-limit VAR] [--pdlp-solver-mode VAR] [--method VAR] [--large-nnz-threshold VAR] [--num-cpu-threads VAR] [--augmented VAR] [--folding VAR] [--dualize VAR] [--ordering VAR] [--dual-simplex-initial-perturbation VAR] [--dual-simplex-remove-perturbation VAR] [--primal-simplex-pricing VAR] [--barrier-dual-initial-point VAR] [--postsolve-info VAR] [--mip-cut-passes VAR] [--mip-mixed-integer-rounding-cuts VAR] [--mip-mixed-integer-gomory-cuts VAR] [--mip-knapsack-cuts VAR] [--mip-flow-cover-cuts VAR] [--mip-clique-cuts VAR] [--mip-zero-half-cuts VAR] [--mip-implied-bound-cuts VAR] [--mip-strong-chvatal-gomory-cuts VAR] [--mip-reduced-cost-strengthening VAR] [--mip-dual-degenerate-feasibility-pump VAR] [--mip-primal-degenerate-pivots VAR] [--mip-dual-degenerate-pivots VAR] [--mip-rins VAR] [--mip-rens VAR] [--mip-mutation VAR] [--mip-objective-step VAR] [--num-gpus VAR] [--mip-batch-pdlp-strong-branching VAR] [--mip-batch-pdlp-reliability-branching VAR] [--mip-strong-branching-simplex-iteration-limit VAR] [--presolve VAR] [--multigpu-pdlp-partitioner VAR] [--mip-determinism-mode VAR] [--random-seed VAR] [--mip-reliability-branching VAR] [--mip-symmetry VAR] [--mip-scaling VAR] [--barrier-presolve-bound-free-variables VAR] [--barrier-adaptive-regularization VAR] [--time-limit VAR] [--work-limit VAR] [--absolute-dual-tolerance VAR] [--relative-dual-tolerance VAR] [--absolute-primal-tolerance VAR] [--relative-primal-tolerance VAR] [--absolute-gap-tolerance VAR] [--relative-gap-tolerance VAR] [--mip-absolute-tolerance VAR] [--mip-relative-tolerance VAR] [--mip-integrality-tolerance VAR] [--mip-absolute-gap VAR] [--mip-relative-gap VAR] [--primal-infeasible-tolerance VAR] [--dual-infeasible-tolerance VAR] [--mip-cut-change-threshold VAR] [--mip-cut-min-orthogonality VAR] [--barrier-primal-regularization VAR] [--barrier-dual-regularization VAR] [--barrier-step-scale VAR] [--barrier-initial-point-safeguard VAR] [--mip-semi-continuous-big-m VAR] [--infeasibility-detection VAR] [--strict-infeasibility VAR] [--per-constraint-residual VAR] [--save-best-primal-so-far VAR] [--first-primal-feasible VAR] [--mip-heuristics-only VAR] [--log-to-console VAR] [--crossover VAR] [--eliminate-dense-columns VAR] [--cudss-deterministic VAR] [--dual-postsolve VAR] [--sequence-solve VAR] [--barrier-iterative-refinement VAR] [--mip-probing VAR] [--log-file VAR] [--solution-file VAR] [--user-problem-file VAR] [--presolve-file VAR] filename
2
3Positional arguments:
4 filename input problem file; format dispatched by extension (case-insensitive). Supported: .lp, .mps, .qps and their .gz / .bz2 / .lz4 compressed variants (e.g. .lp.gz, .mps.bz2, .qps.lz4). [required]
5
6Optional arguments:
7 -h, --help shows help message and exits
8 -v, --version prints version information and exits
9 --initial-solution path to the initial solution .sol file [nargs=0..1] [default: ""]
10 --relaxation solve the LP relaxation of the MIP
11 --params-file path to parameter config file (key = value format, supports all parameters) [nargs=0..1] [default: ""]
12 --mps-reader MPS reader implementation: default uses the production parser; experimental-fast uses the experimental SIMD parser for free-format LP/MIP/QP/QCQP (SOCP) .mps/.qps files and their .gz/.bz2/.lz4 compressed variants [nargs=0..1] [default: "default"]
13 --dump-hyper-params print hyper-parameters only in config file format and exit
14 --dump-params print all parameters in config file format and exit
15 --pdlp-precision PDLP precision mode. default: native type, single: FP32 internally, double: FP64 explicitly, mixed: mixed-precision SpMV (FP32 matrix, FP64 vectors). [nargs=0..1] [default: "-1"]
16 --iteration-limit [nargs=0..1] [default: 2147483647]
17 --node-limit [nargs=0..1] [default: 2147483647]
18 --pdlp-solver-mode [nargs=0..1] [default: 4]
19 --method [nargs=0..1] [default: 0]
20 --large-nnz-threshold [nargs=0..1] [default: 50000000]
21 --num-cpu-threads [nargs=0..1] [default: -1]
22 --augmented [nargs=0..1] [default: -1]
23 --folding [nargs=0..1] [default: -1]
24 --dualize [nargs=0..1] [default: -1]
25 --ordering [nargs=0..1] [default: -1]
26 --dual-simplex-initial-perturbation [nargs=0..1] [default: -1]
27 --dual-simplex-remove-perturbation [nargs=0..1] [default: -1]
28 --primal-simplex-pricing [nargs=0..1] [default: 1]
29 --barrier-dual-initial-point [nargs=0..1] [default: -1]
30 --postsolve-info [nargs=0..1] [default: -1]
31 --mip-cut-passes [nargs=0..1] [default: 10]
32 --mip-mixed-integer-rounding-cuts [nargs=0..1] [default: -1]
33 --mip-mixed-integer-gomory-cuts [nargs=0..1] [default: -1]
34 --mip-knapsack-cuts [nargs=0..1] [default: -1]
35 --mip-flow-cover-cuts [nargs=0..1] [default: -1]
36 --mip-clique-cuts [nargs=0..1] [default: -1]
37 --mip-zero-half-cuts [nargs=0..1] [default: -1]
38 --mip-implied-bound-cuts [nargs=0..1] [default: -1]
39 --mip-strong-chvatal-gomory-cuts [nargs=0..1] [default: -1]
40 --mip-reduced-cost-strengthening [nargs=0..1] [default: -1]
41 --mip-dual-degenerate-feasibility-pump [nargs=0..1] [default: -1]
42 --mip-primal-degenerate-pivots [nargs=0..1] [default: -1]
43 --mip-dual-degenerate-pivots [nargs=0..1] [default: -1]
44 --mip-rins [nargs=0..1] [default: -1]
45 --mip-rens [nargs=0..1] [default: -1]
46 --mip-mutation [nargs=0..1] [default: -1]
47 --mip-objective-step [nargs=0..1] [default: 1]
48 --num-gpus [nargs=0..1] [default: 1]
49 --mip-batch-pdlp-strong-branching [nargs=0..1] [default: 0]
50 --mip-batch-pdlp-reliability-branching [nargs=0..1] [default: 0]
51 --mip-strong-branching-simplex-iteration-limit [nargs=0..1] [default: -1]
52 --presolve [nargs=0..1] [default: -1]
53 --multigpu-pdlp-partitioner [nargs=0..1] [default: 0]
54 --mip-determinism-mode [nargs=0..1] [default: 0]
55 --random-seed [nargs=0..1] [default: -1]
56 --mip-reliability-branching [nargs=0..1] [default: -1]
57 --mip-symmetry [nargs=0..1] [default: -1]
58 --mip-scaling [nargs=0..1] [default: 2]
59 --barrier-presolve-bound-free-variables [nargs=0..1] [default: -1]
60 --barrier-adaptive-regularization [nargs=0..1] [default: -1]
61 --time-limit [nargs=0..1] [default: inf]
62 --work-limit [nargs=0..1] [default: inf]
63 --absolute-dual-tolerance [nargs=0..1] [default: 0.0001]
64 --relative-dual-tolerance [nargs=0..1] [default: 0.0001]
65 --absolute-primal-tolerance [nargs=0..1] [default: 0.0001]
66 --relative-primal-tolerance [nargs=0..1] [default: 0.0001]
67 --absolute-gap-tolerance [nargs=0..1] [default: 0.0001]
68 --relative-gap-tolerance [nargs=0..1] [default: 0.0001]
69 --mip-absolute-tolerance [nargs=0..1] [default: 1e-06]
70 --mip-relative-tolerance [nargs=0..1] [default: 1e-12]
71 --mip-integrality-tolerance [nargs=0..1] [default: 1e-05]
72 --mip-absolute-gap [nargs=0..1] [default: 1e-10]
73 --mip-relative-gap [nargs=0..1] [default: 0.0001]
74 --primal-infeasible-tolerance [nargs=0..1] [default: 1e-10]
75 --dual-infeasible-tolerance [nargs=0..1] [default: 1e-10]
76 --mip-cut-change-threshold [nargs=0..1] [default: -1]
77 --mip-cut-min-orthogonality [nargs=0..1] [default: 0.5]
78 --barrier-primal-regularization [nargs=0..1] [default: -1]
79 --barrier-dual-regularization [nargs=0..1] [default: -1]
80 --barrier-step-scale [nargs=0..1] [default: 0.9]
81 --barrier-initial-point-safeguard [nargs=0..1] [default: 10]
82 --mip-semi-continuous-big-m [nargs=0..1] [default: 1e+10]
83 --infeasibility-detection [nargs=0..1] [default: false]
84 --strict-infeasibility [nargs=0..1] [default: false]
85 --per-constraint-residual [nargs=0..1] [default: false]
86 --save-best-primal-so-far [nargs=0..1] [default: false]
87 --first-primal-feasible [nargs=0..1] [default: false]
88 --mip-heuristics-only [nargs=0..1] [default: false]
89 --log-to-console [nargs=0..1] [default: true]
90 --crossover [nargs=0..1] [default: false]
91 --eliminate-dense-columns [nargs=0..1] [default: true]
92 --cudss-deterministic [nargs=0..1] [default: false]
93 --dual-postsolve [nargs=0..1] [default: true]
94 --sequence-solve [nargs=0..1] [default: false]
95 --barrier-iterative-refinement [nargs=0..1] [default: true]
96 --mip-probing [nargs=0..1] [default: true]
97 --log-file [nargs=0..1] [default: ""]
98 --solution-file [nargs=0..1] [default: ""]
99 --user-problem-file [nargs=0..1] [default: ""]
100 --presolve-file [nargs=0..1] [default: ""]
Please refer to Convex Optimization Settings and MIP Settings for more details on default values and other options.