Skip to content

Test failures (precision issues) in 1.12.0 #2690

@orlitzky

Description

@orlitzky

Hi, I'm getting ready to package HiGHS for Gentoo, and am therefore trying to break the test suite before unleashing it on end users.

With gcc-15.2.1 at -O3, I get only two failures:

/var/lib/portage/tmp/portage/sci-mathematics/highs-1.12.0/work/HiGHS/check/TestMipSolver.cpp:1162: FAILED:
  REQUIRE( h.getInfo().objective_function_value == mip_optimal_objective )
with expansion:
  1201500.0 == 1201499.9999999998
/var/lib/portage/tmp/portage/sci-mathematics/highs-1.12.0/work/HiGHS/check/TestMipSolver.cpp:1278: FAILED:
  REQUIRE( h.getInfo().objective_function_value <= mip_optimal_objective )
with expansion:
  1201500.0 <= 1201499.9999999998

With clang-21.1.7 at -O3, there are a lot more. The weird one is,

-------------------------------------------------------------------------------
highs-callback-mip-user-solution
-------------------------------------------------------------------------------
/var/lib/portage/tmp/portage/sci-mathematics/highs-1.12.0/work/HiGHS/check/TestCallbacks.cpp:540
...............................................................................

/var/lib/portage/tmp/portage/sci-mathematics/highs-1.12.0/work/HiGHS/check/TestCallbacks.cpp:540: FAILED:
due to a fatal error condition:
  SIGABRT - Abort (abnormal termination) signal

And then there are a lot more minor precision disagreements. I have tried to grep out the useful bits:

Model name          : afiro
Model status        : Optimal
PDLP      iterations: 360
Objective value     : -4.6475314931e+02
P-D objective error :  3.8891825863e-08
HiGHS run time      :          0.01
<end of output>
Test time =   0.09 sec
----------------------------------------------------------
Test Fail Reason:
Required regular expression not found. Regex=[Objective value     : -4.64753150
]
"afiro-pdlp-no-presolve" end time: Dec 14 12:41 EST
"afiro-pdlp-no-presolve" time elapsed: 00:00:00
Model name          : chip
Model status        : Optimal
PDLP      iterations: 400
Objective value     : -9.0000000340e+02
P-D objective error :  2.9765403873e-09
HiGHS run time      :          0.00
<end of output>
Test time =   0.08 sec
----------------------------------------------------------
Test Fail Reason:
Required regular expression not found. Regex=[Objective value     : -8.9999999
]
"chip-pdlp-no-presolve" end time: Dec 14 12:41 EST
"chip-pdlp-no-presolve" time elapsed: 00:00:00
Model name          : standata
Model status        : Unknown
PDLP      iterations: 1360
Objective value     :  1.2576994729e+03
P-D objective error :  2.3210090340e-08
HiGHS run time      :          0.53
<end of output>
Test time =   0.58 sec
----------------------------------------------------------
Test Fail Reason:
Required regular expression not found. Regex=[Objective value     :  1.25769944
]
"standata-pdlp-no-presolve" end time: Dec 14 12:41 EST
"standata-pdlp-no-presolve" time elapsed: 00:00:00
Model name          : standgub
Model status        : Unknown
PDLP      iterations: 1360
Objective value     :  1.2576994729e+03
P-D objective error :  2.3210090340e-08
HiGHS run time      :          0.55
<end of output>
Test time =   0.60 sec
----------------------------------------------------------
Test Fail Reason:
Required regular expression not found. Regex=[Objective value     :  1.25769944
]
"standgub-pdlp-no-presolve" end time: Dec 14 12:41 EST
"standgub-pdlp-no-presolve" time elapsed: 00:00:00
Model name          : e226
Model status        : Optimal
PDLP      iterations: 35400
Objective value     : -1.1638930924e+01
P-D objective error :  7.3731870498e-08
HiGHS run time      :          5.81
<end of output>
Test time =   5.86 sec
----------------------------------------------------------
Test Fail Reason:
Required regular expression not found. Regex=[Objective value     : -1.16389294
]
"e226-pdlp-no-presolve" end time: Dec 14 12:42 EST
"e226-pdlp-no-presolve" time elapsed: 00:00:05
Model name          : shell
Model status        : Optimal
PDLP      iterations: 17120
Objective value     :  1.2088253568e+09
P-D objective error :  2.8506599407e-09
HiGHS run time      :          9.53
<end of output>
Test time =   9.62 sec
----------------------------------------------------------
Test Fail Reason:
Required regular expression not found. Regex=[Objective value     :  1.20882534
]
"shell-pdlp-no-presolve" end time: Dec 14 12:42 EST
"shell-pdlp-no-presolve" time elapsed: 00:00:09
Model name          : stair
Model status        : Optimal
PDLP      iterations: 104320
Objective value     : -2.5126695116e+02
P-D objective error :  2.0629987563e-08
HiGHS run time      :         27.13
<end of output>
Test time =  27.19 sec
----------------------------------------------------------
Test Fail Reason:
Required regular expression not found. Regex=[Objective value     : -2.51266942
]
"stair-pdlp-no-presolve" end time: Dec 14 12:42 EST
"stair-pdlp-no-presolve" time elapsed: 00:00:27
Model name          : scrs8
Model status        : Optimal
PDLP      iterations: 98160
Objective value     :  9.0429687354e+02
P-D objective error :  9.8211718729e-08
HiGHS run time      :         39.28
<end of output>
Test time =  39.34 sec
----------------------------------------------------------
Test Fail Reason:
Required regular expression not found. Regex=[Objective value     :  9.04297094
]
"scrs8-pdlp-no-presolve" end time: Dec 14 12:42 EST
"scrs8-pdlp-no-presolve" time elapsed: 00:00:39

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions