This is the mail archive of the
gsl-discuss@sourceware.cygnus.com
mailing list for the GSL project.
Re: multimin question
Brian Gough wrote:
>
> Assuming this is on intel, adding a call gsl_ieee_env_setup() and
> running the test program with GSL_IEEE_MODE=double-precision will
> avoid the use of extended-precision registers. Declaring the relevant
> variables "volatile" should have the same effect. This will let you
> test your theory for any -O level.
>
> If extended precision is the problem then the simplest workaround is
> "volatile", with a comment explaining why it is needed.
I've modified the bracketing program, adding volatile to the variables and it
does work now. I'll commit the changes in CVS ASAP. By working, I mean that
gsl_min_find_bracket agrees with other functions on the fact it is not able to
find a bracketing interval. I consider the old behavior to be a bug, which is
fixed right now.
But there is still a problem: difference of behavior with or without an added
constant, whereas this does not change the gradient. I will look at that, but
I'm quite sure it's related also to representation issues.
Fabrice Rossi
PS: I've noticed that GSL_IEEE_MODE=double-precision does not help (on
intel)...