-
Notifications
You must be signed in to change notification settings - Fork 0
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
Ibex-lib changing standard Java double behavior #3
Comments
Thanks for the neat report. I think I fixed it (master branch) but there is now a little loss of efficiency we could avoid. |
Hello @gchabert, Thanks for your reply and solution. Yes I would like to have control of the rounding mode, at least I need it to keep the sandard Java behavior. I mean it because, besides choco and ibex, I use other math libraries and I don't want this rounding propagating side effects for other calculations. I'm trying to be little pragmatic here, some time ago we've discussed about the performance bottleneck related to Ibex constraints construction (link). My question is, the performance reduction is more significant than ibex constraints construction? Do you have an idea of time (in ms or us) that I will have to pay to use this rounding reset? I've tested your changes in my environment and now it's working. If you do agree with my arguments, could you release a new version of the library? I'll feel more confortable in use something that was released. Thanks for all, |
@schmittjoaopedro It is a good idea to give the choice to the user and add a parameter in the constructor. I'm integrating your suggestion and publish a new release. I can't compare the performance loss due to the rounding mode switch compared to the constructor call. Of course, the constructor takes way more time, but it is only called once. The number of calls to contractors greatly depends on the problem. Gilles |
I see, For now, I'm developing in choco-solver the necessary modifications to support this new version. I'm very anxious to solve the following issues: Thanks to the dynamic nature of JNI, it will be possible to keep the backwards compatibility with previous versions of choco and ibex-java. Thanks for your support @gchabert FYI: @cprudhom |
This is done. See 1d6d7f5 |
Hello,
I've noticed a strange behavior in the ibex-java integration. After installing ibex-java for linux environments (or MacOSX), the
ibex.build
is changing the default double behavior for Java. The following listing presentes the problem callingMath.pow
operation before and after callingibex.buid()
;Environment
Steps to reproduce
In a linux server with docker, execute the following steps:
Then in App.java, past the following program:
Then compile and execute with the following commands:
This issue is was discovered in choco-solver (ISSUE-740)
The text was updated successfully, but these errors were encountered: