Re: [eigen] How to speed up svd?

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


On 10/05/2012 08:25 AM, Hugh Perkins wrote:
Hi,

I run SVD on a 500*1000 dense double matrix of random number, with
thin U and V, and it takes about 26 seconds.  The code looks like:

     JacobiSVD<MatrixXd,HouseholderQRPreconditioner> svd(In,
ComputeThinU | ComputeThinV);

On matlab it takes about 1.1 seconds, though admittedly the solution
doesn't seem terribly accurate.

What are possible reasons for this disparity, and is there anything I
can do to improve the situation?

Hugh

I don't have a suggestion, but here are some links to give a little history of the problem.

This is a problem that has been brought up several times:
http://listengine.tuxfamily.org/lists.tuxfamily.org/eigen/2011/12/msg00092.html
http://listengine.tuxfamily.org/lists.tuxfamily.org/eigen/2012/06/msg00267.html
    http://forum.kde.org/viewtopic.php?f=74&t=102088
Gael offered up one idea for speeding up a subset of JacobiSVD :
http://listengine.tuxfamily.org/lists.tuxfamily.org/eigen/2012/06/msg00020.html
but I'm not sure what the status is.




Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/