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

support multiple RHS #215

Open
lukeolson opened this issue Jan 22, 2018 · 5 comments
Open

support multiple RHS #215

lukeolson opened this issue Jan 22, 2018 · 5 comments
Assignees
Milestone

Comments

@lukeolson
Copy link
Member

Finish support for multiple RHS in the solve.

@nschloe
Copy link
Contributor

nschloe commented Jul 6, 2018

Need that, too. :)

@lukeolson
Copy link
Member Author

@jbschroder @nschloe I did a prototype here:
https://github.com/pyamg/pyamg/tree/multiple-rhs

For most variants of AMG, only the solve phase in impacted (adaptive AMG is one case that needs modification in the setup). For the solve, I added a jacobi_m that executes relaxation on blocked input:
https://github.com/pyamg/pyamg/blob/multiple-rhs/pyamg/amg_core/relaxation.h#L246

Finishing this will take a bit (but not a ton) on two fronts:

  1. updating the kernels to blocked format (like jacobi_m) or at least restricting relaxation in this case to say jacobi and Gs.
  2. adding better checks /more consistent shapes. right now we mostly use (M,) but even this isn't consistent. Since the cost is low, we can go to (M,1) and modify from there.

(3. more testing...)

@jbschroder
Copy link
Member

jbschroder commented Jul 10, 2018 via email

@lukeolson
Copy link
Member Author

It's not too bad ... the tricky part is that we've been sloppy with (M,) and (M,1) sizes.

@lukeolson lukeolson modified the milestones: 4.0.0, 4.1 Jul 31, 2018
@CebFu
Copy link

CebFu commented Oct 11, 2023

I tried it, but seemed not accurate. Are there some demos that can be provided?

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

4 participants