[SciPy-Dev] SVDLIBC for sparse SVDs

Pauli Virtanen pav@iki...
Tue Dec 11 18:34:33 CST 2012

10.12.2012 20:29, Jake Vanderplas kirjoitti:
> I could be convinced either way, but I thought I'd ask the list: any 
> thoughts on whether this would be worth including in Scipy?
> [1] http://tedlab.mit.edu/~dr/SVDLIBC/
> [2] http://pypi.python.org/pypi/sparsesvd/

I don't think that this will bring new compilation problems, as Scipy is
probably already as bad as it gets.

I think the main question would be about numerical robustness, as the
current svds() implementation doesn't do anything special. Also, how
much additional trouble comes from maintenance of the wrappers (probably
not so much, if the package already has existed for some time).

I glanced through the svdlibc source code and the review paper:

- The algorithm is at least on high level the same, Lanczos on A'A

- The C version doesn't seem to use LAPACK or BLAS.

It wasn't immediately clear what the pieces of code were that in the
LAS2 algorithm were tailored for SVD. On the other hand, it's based on
some venerable and published code, so it's probably good.

Dealing with CSR internally is probably not a bad thing --- svds() won't
work with general linear operators either because it needs the transpose.

It's not clear to me either how big overall win this would be, but I
won't object if you'd like to add it.


More information about the SciPy-Dev mailing list