-
Notifications
You must be signed in to change notification settings - Fork 86
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
Add orthogonalization options to GMRES #1646
Conversation
Some initial benchmarks comparing old/new Hessenberg use in MGS for the affected kernels ( CUDA - Hessenberg QR To me, this seems to indicate that any difference between the old and new versions is basically just noise (especially as the absolute times for |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. I've left mostly minor comments, except for the shape of hessenberg_iter
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! Some minor nits. Thanks for adding the performance comparisons.
a76e50e
to
332235c
Compare
Change Hessenberg data layout to facilitate CGS communication in distributed solver.
for kernels that do not use the full Hessenberg matrix
332235c
to
d553b3a
Compare
Add orthogonalization choices for GMRES (CGS and CGS2 in addition to the MGS available before).
This adds a new unified kernel for performing the multidot operation for CGS/CGS2. It also changes the data layout of the Hessenberg matrix so that all the data that needs to be communicated after the multidot is stored contiguously, and can be handled with one communication.
TODO: