diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2012-07-09 23:15:12 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2012-07-09 23:15:12 -0700 |
commit | 997e4c77acc191a0d0b9575c435f3618d4f09ebc (patch) | |
tree | 76696f7c3b487b531afdd8f4082e8f0f8353bbe3 /src/sat | |
parent | 6ba6c3279aa7a3d2f2bd6507a029e7aee0dcf65c (diff) | |
download | abc-997e4c77acc191a0d0b9575c435f3618d4f09ebc.tar.gz abc-997e4c77acc191a0d0b9575c435f3618d4f09ebc.tar.bz2 abc-997e4c77acc191a0d0b9575c435f3618d4f09ebc.zip |
Performance bug fix in the SAT solver (clearing variable activity after rollback).
Diffstat (limited to 'src/sat')
-rw-r--r-- | src/sat/bsat/satSolver2.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/sat/bsat/satSolver2.c b/src/sat/bsat/satSolver2.c index 631051e0..45d23548 100644 --- a/src/sat/bsat/satSolver2.c +++ b/src/sat/bsat/satSolver2.c @@ -1574,8 +1574,15 @@ void sat_solver2_rollback( sat_solver2* s ) for ( i = 2*s->iVarPivot; i < 2*s->size; i++ ) s->wlists[i].size = 0; // clear variable activity +#ifdef USE_FLOAT_ACTIVITY2 + for ( i = s->iVarPivot; i < s->size; i++ ) + s->activity[i] = 0; +#else for ( i = s->iVarPivot; i < s->size; i++ ) s->activity[i] = (1<<10); +#endif + + // initialize other vars s->size = s->iVarPivot; |