Several crash cases for build with recent sources

Jaroslav Hajek highegg at gmail.com
Thu May 21 03:32:29 CDT 2009


On Wed, May 20, 2009 at 2:50 PM, Jaroslav Hajek <highegg at gmail.com> wrote:
> On Tue, May 12, 2009 at 12:47 AM, Alexander Mamonov <mamonov at gmail.com> wrote:
>> Here are several crashing instances on my build of Octave from recent
>> sources on Windows with MinGW:
>>
>> octave:1> backend('fltk');
>> octave:2> clear all;
>> octave:3> panic: Segmentation violation -- stopping myself...
>> attempting to save variables to `octave-core'...
>> save to `octave-core' complete
>> warning: figs is no longer a built-in variable; please read the NEWS
>> file or type `news' for details
>>
>> --------------------------------------------------------------------------------------------------------------------------------------------------------------
>>
>> octave:1> eigs(1)
>> error: eigs: Too many eigenvalues to extract (k >= n).
>>      Use 'eig(full(A))' instead
>> terminate called after throwing an instance of 'octave_execution_exception'
>>
>> This application has requested the Runtime to terminate it in an unusual way.
>> Please contact the application's support team for more information.
>> panic: Aborted -- stopping myself...
>> attempting to save variables to `octave-core'...
>> save to `octave-core' complete
>>
>> --------------------------------------------------------------------------------------------------------------------------------------------------------------
>>
>> octave:1> svds(1)
>> error: eigs: error -3 in dsaupd
>> terminate called after throwing an instance of 'octave_execution_exception'
>>
>> This application has requested the Runtime to terminate it in an unusual way.
>> Please contact the application's support team for more information.
>> panic: Aborted -- stopping myself...
>> attempting to save variables to `octave-core'...
>> save to `octave-core' complete
>> error: stdin is not a tty!
>>
>> --------------------------------------------------------------------------------------------------------------------------------------------------------------
>>
>> Cases 2 and 3 might be platform-dependent issues. Case 1 looks very
>> much like Octave 3.0.x clear all
>> crash that happens for certain octave-forge packages.
>>
>
> I can confirm 2 and 3 generate error messages and I'm working on a
> patch that improves things a bit (in particular the dsaupd). However,
> I see no core dumps.
>

The patch is uploaded. Despite the fact that DSAUPD docs allow the
case NCV = N, it doesn't seem to work for me.
Specifically, the following produces incorrect results for me (must
run with revision < 9228):

n = 20;
 k = 4;
 A = sparse([3:n,1:n,1:(n-2)],[1:(n-2),1:n,3:n],[ones(1,n-2),4*ones(1,n),ones(1,n-2)]);
 d0 = eig (A);
 d2 = sort(d0)
 opts.p = 20;

 d1 = eigs (A, k, 'be', opts)

d2 =

   2.0810
   2.0810
   2.3175
   2.3175
   2.6903
   2.6903
   3.1692
   3.1692
   3.7154
   3.7154
   4.2846
   4.2846
   4.8308
   4.8308
   5.3097
   5.3097
   5.6825
   5.6825
   5.9190
   5.9190

d1 =

   5.6825
   5.6825
   5.9190
   5.9190

which is not right. I couldn't find anything in the Octave code
causing this, so I suspect a bug in ARPACK.
For now, I changed the constraints to the most stringent ones, i.e. 0
< NEV < NCV < N, which seem to work. Note that this implies 2 < N,
which I added explicitly. If anyone finds out what's wrong with the
NCV = N case (opts.p == n), please send a patch.

cheers

-- 
RNDr. Jaroslav Hajek
computing expert & GNU Octave developer
Aeronautical Research and Test Institute (VZLU)
Prague, Czech Republic
url: www.highegg.matfyz.cz



More information about the Bug-octave mailing list