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

Profile reduction for cholesky factorizations #185

Open
lksriemer opened this issue Mar 26, 2020 · 2 comments
Open

Profile reduction for cholesky factorizations #185

lksriemer opened this issue Mar 26, 2020 · 2 comments

Comments

@lksriemer
Copy link
Contributor

Hey again @vbarrielle, I thought we might continue this discussion in a new issue.
I am a Student, I research profile reduction methods for a minor assignment, though mostly for my own personal joy. So I have to disappoint you if you believed me to be an expert on the topic.

I will fork the project to implement my version of the RCM algorithm, using the George-Liu pseudoperipheral vertex finder. I will ask any questions that may arise in this issue.

Here is the list of reading material you asked for. I have not read all of these entirely, for that matter, I don't think many humans have ever done that.

  • This is the essential book describing classsical methods for profile and bandwidth reduction. It describes methods for finding pseudoperipheral verices from page 70 onwards. It also describes the minimum degree reordering, which is generally superior for the fill-in reduction of Cholesky factorizations, from page 133 onward. I might also get around to implementing this ordering.

  • This is the technical report for the implementation of sparse matrices in matlab. It esssentially claims: "Our implementation of symrcm is very similar to the one implemented in SPARSPAK", along with some more general, very interesting remarks. SPARSPAK is the library described in the above book.

  • Though only tangential to this conversation, this is a recent paper reviewing a variety of different more modern methods, including FNCHC , GPS and NSloan.

One remark about starting vertices: While they (of course) barely matter for random matrices, their choice becomes increasingly important for problems with inherent structure. Pseudoperipheral verices have proven to be superior to simply minimum degree vertices in those cases, as described in the first linked book.

@lksriemer
Copy link
Contributor Author

By the way, just to show a life sign after his little while: I have not forgotten about this project, and intend to implement AMD (or at least support you at implementing it) some time in the future. These last few months, and the upcoming weeks, I have been and will be busy with other matters though.

@vbarrielle
Copy link
Collaborator

Glad to hear it! Meanwhile, I've started binding the CAMD part of suitesparse, and I'll probably do AMD next, so this should be nice to compare!

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

No branches or pull requests

2 participants