octave-bug-tracker
[Top][All Lists]
Advanced

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

[Octave-bug-tracker] [bug #57435] Test suite crashes on Windows on spars


From: Markus Mützel
Subject: [Octave-bug-tracker] [bug #57435] Test suite crashes on Windows on sparse.tst
Date: Sat, 21 Dec 2019 08:07:22 -0500 (EST)
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:72.0) Gecko/20100101 Firefox/72.0

Follow-up Comment #16, bug #57435 (project octave):

I set a break at liboctave/numeric/sparse-lu.cc:325 and inspected the data
just before calling the UMFPACK function:

(gdb) p *(Ap)
$1 = 0
(gdb) p *(Ap+1)
$2 = 2
(gdb) p *(Ap+2)
$3 = 4
(gdb) p *(Ap+3)
$4 = -8646640802109656046
(gdb) p *(Ai)
$5 = 0
(gdb) p *(Ai+1)
$6 = 1
(gdb) p *(Ai+2)
$7 = 0
(gdb) p *(Ai+3)
$8 = 1
(gdb) p *(Ai+4)
$9 = 241020416
(gdb) p *(Az)
$10 = {_M_value = 1 + 0 * I}
(gdb) p *(Az+1)
$11 = {_M_value = 1 + 0 * I}
(gdb) p *(Az+2)
$12 = {_M_value = 1 + 0 * I}
(gdb) p *(Az+3)
$13 = {_M_value = 1 + 1 * I}


The values at Ap (the column indices) don't seem to be correct.

Fwiw, they are already incorrect in SparseComplexMatrix::inverse
(CSparse.cc:1040):

(gdb) up 2
#2  0x0000000068fafd7f in SparseComplexMatrix::inverse
(this=this@entry=0x5b8fb820, mattype=..., info=@0x5b8fb6f0: 1900551,
rcond=@0x5b8fb6f8: 0,
    calc_cond=calc_cond@entry=true) at
/home/osboxes/Repositories/Octave/mxe-octave-1/tmp-default-octave/octave-6.0.0/liboctave/array/MArray.h:70
70     
/home/osboxes/Repositories/Octave/mxe-octave-1/tmp-default-octave/octave-6.0.0/liboctave/array/MArray.h:
No such file or directory.
(gdb) p this->cidx()
$15 = (octave_idx_type *) 0x592be8e0
(gdb) p *(this->cidx())
$16 = 0
(gdb) p *(this->cidx()+1)
$17 = 2
(gdb) p *(this->cidx()+2)
$18 = 4
(gdb) p *(this->cidx()+3)
$19 = -8646686981603003266


And they seem to be wrong from the get-go in Finv at
libinterp/corefcn/inv.cc:176:

(gdb) display-sparse-array m
sparse object: {<MSparse<std::complex<double> >> =
{<Sparse<std::complex<double> >> = {_vptr.Sparse = 0xeb11740 <vtable for
SparseComplexMatrix+16>,
      rep = 0x5d8cc1e0, dimensions = {rep = 0x5f15e890}}, <No data fields>},
<No data fields>}
dimensions.rep[0] = ndims: 2
dims: {2, 2}

dimensions.rep[1] = 2
rep = {d = 0x5b608a50, r = 0x5f15e4c0, c = 0x592be8e0, nzmx = 4, nrows = 2,
ncols = 2, count = {m_count = {<std::__atomic_base<long long>> = {
        static _S_alignment = 8, _M_i = 1}, <No data fields>}}}
rep.d = {{_M_value = 1 + 0 * I}, {_M_value = 1 + 0 * I}, {_M_value = 1 + 0 *
I}, {_M_value = 1 + 1 * I}}
rep.r = {0, 1, 0, 1}
rep.c = {0, 2, 4}


So it is probably indeed an error on Octave's side.

    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?57435>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

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