Skip to content

Commit e9d5c6c

Browse files
committed
Introduced mip_search_concurrency option
1 parent 3e700fe commit e9d5c6c

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

highs/lp_data/HConst.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ const std::string kHighsChooseString = "choose";
3333
const std::string kHighsOnString = "on";
3434
const HighsInt kHighsMaxStringLength = 512;
3535
const HighsInt kSimplexConcurrencyLimit = 8;
36+
const HighsInt kMipSearchConcurrencyLimit = 8;
3637
const double kRunningAverageMultiplier = 0.05;
3738
const double kExcessivelyLargeBoundValue = 1e10;
3839
const double kExcessivelyLargeCostValue = 1e10;

highs/lp_data/HighsOptions.h

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -452,6 +452,7 @@ struct HighsOptionsStruct {
452452
std::string mip_improving_solution_file;
453453
bool mip_root_presolve_only;
454454
HighsInt mip_lifting_for_probing;
455+
HighsInt mip_search_concurrency;
455456

456457
// Logging callback identifiers
457458
HighsLogOptions log_options;
@@ -591,10 +592,11 @@ struct HighsOptionsStruct {
591592
#endif
592593
mip_improving_solution_save(false),
593594
mip_improving_solution_report_sparse(false),
594-
// clang-format off
595595
mip_improving_solution_file(""),
596596
mip_root_presolve_only(false),
597-
mip_lifting_for_probing(-1) {};
597+
mip_lifting_for_probing(-1),
598+
// clang-format off
599+
mip_search_concurrency(0) {};
598600
// clang-format on
599601
};
600602

@@ -1168,6 +1170,11 @@ class HighsOptions : public HighsOptionsStruct {
11681170
&mip_min_logging_interval, 0, 5, kHighsInf);
11691171
records.push_back(record_double);
11701172

1173+
record_int = new OptionRecordInt(
1174+
"mip_search_concurrency", "Concurrency to use in MIP search", advanced,
1175+
&mip_search_concurrency, 1, 2, kMipSearchConcurrencyLimit);
1176+
records.push_back(record_int);
1177+
11711178
record_int = new OptionRecordInt(
11721179
"ipm_iteration_limit", "Iteration limit for IPM solver", advanced,
11731180
&ipm_iteration_limit, 0, kHighsIInf, kHighsIInf);

0 commit comments

Comments
 (0)