octave-maintainers
[Top][All Lists]
Advanced

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

Re: R: More svds failures


From: Jarno Rajahalme
Subject: Re: R: More svds failures
Date: Mon, 12 Apr 2010 20:53:03 -0700

I finally managed to compile a 64 bit octave on OSX 10.6.3 without crashing 
during the tests. Now I get this strange behavior from test svds:

1. Most of the time all tests pass
2. Sometimes flag assert fails
3. Sometimes dimensions do not match
4. Sometimes the result does not seem to fit in to the tolerance

If you look carefully about the different kinds of responses, you might think 
that the 3 and 4 are interrelated, as the 4 seems to be caused by a shift in 
the values, which is also exhibited in 3, albeit with missing first expected 
value.

I have no idea what is happening, but it seems that the process is not 
deterministic, is there a random seed or something being used?

Regards, 

 Jarno

octave:9> test svds
PASSES 3 out of 3 tests
octave:10> test svds
PASSES 3 out of 3 tests
octave:11> test svds
PASSES 3 out of 3 tests
octave:12> test svds
PASSES 3 out of 3 tests
octave:13> test svds
PASSES 3 out of 3 tests
octave:14> test svds
PASSES 3 out of 3 tests
octave:15> test svds
warning: returning fewer singular values than requested
warning: try increasing the value of sigma
 ***** testif HAVE_ARPACK
[u2,s2,v2,flag] = svds(a,k,0);
s2 = diag(s2);
assert(flag,!1);
assert(s(k:-1:1), s2, 1e-10); 
!!!!! test failed
assert (s (k:-1:1),s2,1e-10) expected
  38.034
  38.034
  38.015
  38.015
  38.004
  38.004
but got
  38.060
  38.034
  38.034
  38.015
  38.015
  38.004
  38.004
Dimensions don't match
octave:16> test svds
 ***** testif HAVE_ARPACK
[u2,s2,v2,flag] = svds(a,k,0);
s2 = diag(s2);
assert(flag,!1);
assert(s(k:-1:1), s2, 1e-10); 
!!!!! test failed
assert (flag,!1) expected
0
but got
1
values do not match
octave:17> test svds
PASSES 3 out of 3 tests
octave:18> test svds
 ***** testif HAVE_ARPACK
[u2,s2,v2,flag] = svds(a,k,0);
s2 = diag(s2);
assert(flag,!1);
assert(s(k:-1:1), s2, 1e-10); 
!!!!! test failed
assert (flag,!1) expected
0
but got
1
values do not match
octave:19> test svds
PASSES 3 out of 3 tests
octave:20> test svds
PASSES 3 out of 3 tests
octave:21> test svds
PASSES 3 out of 3 tests
octave:22> test svds
PASSES 3 out of 3 tests
octave:23> test svds
PASSES 3 out of 3 tests
octave:24> test svds
PASSES 3 out of 3 tests
octave:25> test svds
warning: returning fewer singular values than requested
warning: try increasing the value of sigma
 ***** testif HAVE_ARPACK
[u2,s2,v2,flag] = svds(a,k,0);
s2 = diag(s2);
assert(flag,!1);
assert(s(k:-1:1), s2, 1e-10); 
!!!!! test failed
assert (s (k:-1:1),s2,1e-10) expected
  38.034
  38.034
  38.015
  38.015
  38.004
  38.004
but got
  38.060
  38.034
  38.034
  38.015
  38.015
  38.004
  38.004
Dimensions don't match
octave:26> test svds
PASSES 3 out of 3 tests
octave:27> test svds
PASSES 3 out of 3 tests
octave:28> test svds
PASSES 3 out of 3 tests
octave:29> test svds
PASSES 3 out of 3 tests
octave:30> test svds
PASSES 3 out of 3 tests
octave:31> test svds
warning: returning fewer singular values than requested
warning: try increasing the value of sigma
 ***** testif HAVE_ARPACK
[u2,s2,v2,flag] = svds(a,k,0);
s2 = diag(s2);
assert(flag,!1);
assert(s(k:-1:1), s2, 1e-10); 
!!!!! test failed
assert (s (k:-1:1),s2,1e-10) expected
  38.034
  38.034
  38.015
  38.015
  38.004
  38.004
but got
  38.060
  38.034
  38.034
  38.015
  38.015
  38.004
  38.004
Dimensions don't match
octave:32> test svds
 ***** testif HAVE_ARPACK
[u2,s2,v2,flag] = svds(a,k,0);
s2 = diag(s2);
assert(flag,!1);
assert(s(k:-1:1), s2, 1e-10); 
!!!!! test failed
assert (flag,!1) expected
0
but got
1
values do not match
octave:33> test svds
 ***** testif HAVE_ARPACK
[u2,s2,v2,flag] = svds(a,k,0);
s2 = diag(s2);
assert(flag,!1);
assert(s(k:-1:1), s2, 1e-10); 
!!!!! test failed
assert (s (k:-1:1),s2,1e-10) expected
  38.060
  38.060
  38.034
  38.034
  38.015
  38.015
  38.004
but got
  38.060
  38.034
  38.034
  38.015
  38.015
  38.004
  38.004
maximum absolute error 0.0263523 exceeds tolerance 1e-10
octave:34> 

On Mar 30, 2010, at 11:59 PM, ext Marco Atzeri wrote:

> --- Mar 30/3/10, Rik  ha scritto:
> 
>> There was an earlier report of svds failing either to
>> produce the correct
>> number of eigenvalues or to get results matching the
>> requested tolerance
>> (http://n4.nabble.com/svds-m-change-to-avoid-test-failure-td1645786.html).
>> 
>> The problem has returned for me.  I used a small test
>> script, attached, and
>> I find that the built-in tests for svds are failing around
>> 30% of the time.
>> Is anyone else seeing this?
>> 
>> --Rik
>> 
> 
> 
> 30 % failure also on cygwin
> 
> changeset:   10473:169be980faf9
> 
> Regards
> Marco
> 
> 
> 
> 
> 
> 




reply via email to

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