octave-maintainers
[Top][All Lists]
Advanced

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

Re: dSparse.cc code history


From: Rik
Subject: Re: dSparse.cc code history
Date: Sat, 19 Oct 2013 17:57:54 -0700

On 10/19/2013 11:47 AM, address@hidden wrote:
Message: 1
Date: Sat, 19 Oct 2013 12:24:53 -0500
From: Daniel J Sebald <address@hidden>
To: "c." <address@hidden>
Cc: Rafael Vazquez <address@hidden>,	Marco Vassallo
	<address@hidden>,	octave maintainers mailing list
	<address@hidden>
Subject: Re: SparseMatrix constructor
Message-ID: <address@hidden>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

On 10/19/2013 03:28 AM, c. wrote:
>
> On 18 Oct 2013, at 18:22, c.<address@hidden>  wrote:
>
>> Hi,
>>
>> I have some code[1] that uses the constructor
>>
>>           SparseMatrix::SparseMatrix (Array<double>  V, Array<octave_idx_type>  I,
>>                                       Array<octave_idx_type>  J, octave_idx_type nr,
>>                                       octave_idx_type nc, bool add);
>>
>> where I and J are 0-based arrays of indices, which works in Octave 3.6.x
>> but fails with development sources with the error:
>>
>>   error: op_u_v: subscript indices must be either positive integers less than 2^31 or logicals
>>
>> have there been changes in the SparseMatrix constructors that can explain this change?
>> Can anyone point me to the changeset that caused the different behaviour?
>>
>> c.
>>
>> [1] http://sourceforge.net/p/geopdes/code/HEAD/tree/trunk/geopdes_base/src/op_u_v.cc
>> [2] http://sourceforge.net/p/geopdes/code/HEAD/tree/trunk/geopdes_base/src/op_u_v.cc#l131
>
> Hi,
>
> Just an update, I'm trying to find the changeset that introduced this modification.
>
> I am doing this by bisect and my current "good" release is the following:
>
>    changeset:   17465:77bec442a35a
>    user:        Rik<address@hidden>
>    date:        Wed Sep 18 10:32:27 2013 -0700
>    summary:     Overhaul stem family of plot functions.
>
> Bisecting is quite cumbersome in this case as I have to install each time in order to use
> "mkoctfile" and "pkg install" so if anyone is aware of a changeset in the last month that
> might have caused this problem I'd really appreciate hints.
>
> Marco, I am CC-ing you because I believe this problem might affect your code as well,
> could you please test your package with a recent build of Octave development sources?
One should be able to narrow this down by using the source control diff 
utilities of the repository.  Mercurial's standard front end server 
browser isn't geared for this, but it is possible to advance backward 
through the parents of a file and do diffs...at least those two features 
exist, but perhaps not conveniently combined.  The constructor is in :

[sebald@ octave]$ grep SparseMatrix::SparseMatrix * -r
[snip the ChangeLog entries]
liboctave/array/dSparse.cc:SparseMatrix::SparseMatrix (const 
SparseBoolMatrix &a)
liboctave/array/dSparse.cc:SparseMatrix::SparseMatrix (const DiagMatrix& a)

and here is that source file in the repository:

http://hg.savannah.gnu.org/hgweb/octave/file/9bb5d3f63cdd/liboctave/array/dSparse.cc

Click on the "diff" link and click on the "parents" link in various ways 
and I believed you'll be able to trace the recent history of dSparse.cc 
with just the differences.  There probably is a way to do this at the 
command line on the repository on your computer, but at least the HTML 
version looks a little better if perhaps more clumsy.

Dan
10/19/13

Carlo,

If you think the problem is dSparse.cc you can simply ask Mercurial for the log of that particular file.

cd liboctave/array
hg log dSparse.cc

changeset:   17691:8a54a481ecb5
user:        David Bateman <address@hidden>
date:        Fri Oct 18 23:44:44 2013 +0200
summary:     Massive speed improvement in sparse min/max functions for calls like

changeset:   17688:8031fc73f291
user:        David Bateman <address@hidden>
date:        Fri Oct 18 23:13:45 2013 +0200
summary:     Remove zeros from sparse matrices after use of real/imag (bug # 40305)

changeset:   17682:93e272018df2
user:        David Bateman <address@hidden>
date:        Fri Oct 18 01:36:31 2013 +0200
summary:     Correct dimesion of return values form sparse min/max function with empty

changeset:   17679:c81debf315e0
user:        David Bateman <address@hidden>
date:        Thu Oct 17 23:07:34 2013 +0200
summary:     Avoid use of numel in sparse matrix min/max functions

changeset:   16313:6aafe87a3144
parent:      16311:9c4ac8f25a8c
user:        John W. Eaton <address@hidden>
date:        Fri Mar 15 07:07:08 2013 -0400
summary:     use int64_t for idx type if --enable-64

changeset:   15271:648dabbb4c6b
user:        Rik <address@hidden>
date:        Fri Aug 31 20:00:20 2012 -0700
summary:     build: Refactor liboctave into multiple subdirectories.  Move libcruft into liboctave.

The log ends there because those are the changes only for the exact file liboctave/array/dSparse.cc.  It existed as a file, but in a different location, before changeset 15271.  To see the entire history of the file you can add '--follow' to the 'hg log' command and Mercurial will give you the history through all renamings and moves.

--Rik

reply via email to

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