chocoteam / chocoteam/choco-solver
Optimize checking of unsupported values in CouplesBitSetTable
Open
- Dominant language
- Java
- Stars
- 779
- Forks
- 159
- Avg merge
- 6d 9h
- Merged PRs (30d)
- 10
Description
Noticed this possible optimization while profiling my app.
Currently `PropBinAC3bitrm.propagate()` and `PropBinAC3bitrm.revise()` methods call `CouplesBitSetTable.checkUnsupportedValue()` in a loop with fixed `var` and `v`:
https://github.com/chocoteam/choco-solver/blob/master/solver/src/main/java/org/chocosolver/solver/constraints/extension/binary/PropBinAC3bitrm.java#L62-L90
I'll add a PR with a potential optimization that in our app increased the performance 3x
Contributor guide
Assessment
This issue has not been assessed yet.