octave-maintainers
[Top][All Lists]
Advanced

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

Re: benchmarks


From: John W. Eaton
Subject: Re: benchmarks
Date: Tue, 6 Jan 2004 09:39:19 -0600

On  6-Jan-2004, David Bateman <address@hidden> wrote:

| > I.D Matlab 0.73 - Octave 0.35 -  R 0.24
| >     b = a'*a;
| > 
| > Octave could be faster if it skipped the transpose and used blas
| > directly with the appropriate transpose code.   Note, the tester
| > did not use a self-generated atlas, so these results don't mean
| > much.
| 
| This is a lot of work and cruft foe a small gain. You'd have to pass
| ', *, and '* differently. Then you'd have to create a new function for
| the transpose multiply. Is it worth it?

You don't have to recognize the sequence of operators.  Instead, you
can just tag a matrix as transposed without actually doing the
operation until it is really needed, then you can pass that
information to the LAPACK and BLAS routines, or simply access the
elements differently when indexing (or displaying).  But this means
adding significant complexity to the matrix and array classes (and any
code using them that asks for the data directly), which is why I
decided early on that it was probably better to have transpose do the
operation immediately by copying.

jwe



reply via email to

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