-
Notifications
You must be signed in to change notification settings - Fork 263
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cadical with preprocessor and local search #8502
base: develop
Are you sure you want to change the base?
Conversation
f256138
to
752b463
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## develop #8502 +/- ##
===========================================
- Coverage 78.76% 78.71% -0.05%
===========================================
Files 1728 1728
Lines 198925 199044 +119
Branches 18326 18299 -27
===========================================
Hits 156686 156686
- Misses 42239 42358 +119 ☔ View full report in Codecov by Sentry. |
752b463
to
e1ecc42
Compare
This adds the option to enable Cadical's preprocessor and local search. The default remains unchanged. The choice of preprocessor=1 and localsearch=0 for satcheck_cadical_preprocessingt is motivated by the following data on the HWMCC 2008 benchmarks: 0, 0: ./hwmcc08.sh 114.78s 1, 0: ./hwmcc08.sh 107.44s 2, 0: ./hwmcc08.sh 117.63s 5, 0: ./hwmcc08.sh 129.10s 1, 1: ./hwmcc08.sh 113.50s 5, 5: ./hwmcc08.sh 154.71s
e1ecc42
to
8a7d0fa
Compare
@@ -137,8 +137,8 @@ typedef satcheck_glucose_no_simplifiert satcheck_no_simplifiert; | |||
|
|||
#elif defined SATCHECK_CADICAL | |||
|
|||
typedef satcheck_cadicalt satcheckt; | |||
typedef satcheck_cadicalt satcheck_no_simplifiert; | |||
typedef satcheck_cadical_no_preprocessingt satcheckt; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
typedef satcheck_cadical_no_preprocessingt satcheckt; | |
typedef satcheck_cadical_preprocessingt satcheckt; |
❓
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd like to see broader benchmarking data before doing this.
@@ -297,7 +297,8 @@ get_sat_solver(message_handlert &message_handler, const optionst &options) | |||
else if(solver_option == "cadical") | |||
{ | |||
#if defined SATCHECK_CADICAL | |||
return make_satcheck_prop<satcheck_cadicalt>(message_handler, options); | |||
return make_satcheck_prop<satcheck_cadical_no_preprocessingt>( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
❓ Does this need to honour the no_simplifier
flag as for the other solvers above?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Once the preprocessing becomes default, it should.
This adds the option to enable Cadical's preprocessor and local search. The default remains unchanged.
The choice of
preprocessor=1
andlocalsearch=0
forsatcheck_cadical_preprocessingt
is motivated by the following data on the HWMCC 2008 benchmarks:0, 0: ./hwmcc08.sh 114.78s
1, 0: ./hwmcc08.sh 107.44s
2, 0: ./hwmcc08.sh 117.63s
5, 0: ./hwmcc08.sh 129.10s
1, 1: ./hwmcc08.sh 113.50s
5, 5: ./hwmcc08.sh 154.71s