Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

In-place solve for inverse operators #184

Open
geoffroyleconte opened this issue Jun 19, 2021 · 4 comments
Open

In-place solve for inverse operators #184

geoffroyleconte opened this issue Jun 19, 2021 · 4 comments

Comments

@geoffroyleconte
Copy link
Member

I would be nice to add in-place solves to LinearOperators in the linalg.jl file.

@amontoison
Copy link
Member

amontoison commented Jun 24, 2021

CHOLMOD doesn't have in-place solves. So if you use sparse Cholesky or LDL factorizations you should use \ for the backward and forward sweeps.
On Slack, TIm Davis explained that the issue is to apply the permutation in-place before the triangular solves. They don't have routines for that kind of operations.

@dpo
Copy link
Member

dpo commented Jun 24, 2021

LDLFactorizations solves in place. I didn’t really understand Tim’s response.

@amontoison
Copy link
Member

Yes I know, but LDLFactorizations is not used in LinearOperators.jl.
The problem of Tim is that they didn't implemented permute! and invpermute! routines in CHOLMOD. He also said that it could be very slow for some permutation to apply it in-place.

@dpo
Copy link
Member

dpo commented Jun 24, 2021

LDLFactorizations is not used in LinearOperators.jl

That's easy to change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants