This forum has been archived. All content is frozen. Please use KDE Discuss instead.

Cholesky LDLT or LLT performance

Tags: None
(comma "," separated)
konolige
Registered Member
Posts
9
Karma
0
OS

Cholesky LDLT or LLT performance

Thu Apr 29, 2010 5:38 am
All -

I'm using the ldlt() and llt() operators, and comparing my results against routines using Lapack dpotrf and dpotrs routines. On matrices that are dense (few nonzeros), ldlt()/llt() are about twice as slow. On matrices that are sparse (~ 1% nonzeros or less) the Lapack routines slow way down for larger matrices (5k x 5k) - on the order of 4x slower - while ldlt()/llt() are about the same as before. This performance is very puzzling; there's plenty of memory, so it's not a thrashing problem to virtual memory. Some questions:

1. Has anyone compared ldlt/llt to Lapack routines?
2. Any idea why Lapack would slow down on sparse (not sparsly-encoded) matrices?

Any ideas would be helpful.

Cheers --Kurt
User avatar
ggael
Moderator
Posts
3447
Karma
19
OS
Which eigen version are you using?

For such large matrices and llt the devel branch should be much much faster than the 2.0.x.

About sparse vs dense, you are saying that if you take two 5k^2 SPD matrices, one filled with nonzeros, and the other with only 1% of nonzeros, then you observed a 4x slowdown with Lapack? (the "dense" matrix being faster). That really does not make any sense unless maybe your "sparse" matrix is not positive definite?


Bookmarks



Who is online

Registered users: Bing [Bot], Google [Bot], Sogou [Bot]