bug-gsl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-gsl] Re: infinite loop in gsl_eigen_symm


From: Andries E. Brouwer
Subject: [Bug-gsl] Re: infinite loop in gsl_eigen_symm
Date: Wed, 22 Aug 2007 17:30:18 +0200
User-agent: Mutt/1.5.9i

On Wed, Aug 22, 2007 at 01:25:59PM +0200, Andries E. Brouwer wrote
(to address@hidden):

> In a program that has called gsl_eigen_symm() successfully 10^9 times,
> I find that on one specific matrix this routine hangs in an infinite loop.
> Trying this same matrix on a different architecture, all is well.
> 
> The machine with infinite loop is an x86_64:
> Intel(R) Core(TM)2 CPU 6300 @ 1.86GHz
> 
> A test program that loops is given below.

Investigating a bit closer, I see in symm.c:gsl_eigen_symm()
a loop while (b > 0) { ... } that hangs (flipflops between two states).
If I change the test
        if (sd[b - 1] == 0.0 || ...
into
        if ((sd[b - 1] > -5e-188 && sd[b-1] < 5e-188) || ...
then all is fine.

So, it seems gsl has assumptions about the arithmetic on very small
numbers that are false on this particular machine.

Andries


(this was gsl-1.9)





reply via email to

[Prev in Thread] Current Thread [Next in Thread]