Re: [eigen] slow adjoint sparse dense product

[ Thread Index | Date Index | More Archives ]

Fixed in the default branch.

The real problem was the cost of the scaling factor which was applied nnz times.


On Fri, Nov 11, 2011 at 5:38 AM, Gael Guennebaud
<gael.guennebaud@xxxxxxxxx> wrote:
> OK, it seems that this issue does not always occur and hardly depends
> on the compiler version and whether you use complexes or simply
> doubles... So sure this have to be fixed. These products will also be
> parallelized. Of course if your solver is already parallel then you
> don't care!
> gael.
> On Thu, Nov 10, 2011 at 1:21 PM, Sebastian Birk
> <birk@xxxxxxxxxxxxxxxxxxxxx> wrote:
>> Hi,
>> I am working on iterative solvers for large sparse matrices and I am
>> thinking about switching from uBLAS to Eigen. But the one thing that
>> keeps me from changing the library is that the product of the adjoint of
>> a sparse matrix with a vector is about half the speed of multiplying
>> directly with the non-adjoint matrix. I attached a small simple test
>> file that measures the time for an example matrix.
>> I figured out that for the product y=Ax in class SparseTimeDenseProduct
>> the case "if(Rhs::ColsAtCompileTime==1)" is chosen and the computation
>> is quite fast.
>> But for y=A^{H}x there is no optimized case that can be chosen. Is there
>> a way to speed up the multiplication with an adjoint sparse matrix?
>> Sebastian

Mail converted by MHonArc 2.6.19+