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

Multi-level composite solver using hypre #3987

Merged
merged 7 commits into from
Jun 16, 2024

Conversation

WeiqunZhang
Copy link
Member

This adds a multi-level composite solver for cell-centered ABecLaplacian using hypre. Currently it uses the sstruct interface and BoomerAMG. What's different from our existing hypre solvers is that this one does not use amrex::MLMG at all and it can do multi-level composite solve entirely with hypre, whereas all previous solvers use hypre as a "bottom" solver of MLMG's v-cycle (even though the v-cycle could have only one level).

@asalmgren asalmgren self-requested a review June 13, 2024 01:50
@BenWibking
Copy link
Contributor

Are there plans to add SSAMG support: https://github.com/hypre-space/hypre/blob/recmat/src/sstruct_ls/ssamg.c?

@WeiqunZhang
Copy link
Member Author

Yes, ssamg support will be added in the near future.

This adds a multi-level composite solver for cell-centered ABecLaplacian
using hypre. Currently it uses the sstruct interface and BoomerAMG. What's
different from our existing hypre solvers is that this one does not use
amrex::MLMG at all and it can do multi-level composite solve entirely with
hypre, whereas all previous solvers use hypre as a "bottom" solver of MLMG's
v-cycle (even though the v-cycle could have only one level).
@WeiqunZhang
Copy link
Member Author

I just pushed a commit that adds SSAMG support. For a CPU test, it works on 1, 2, and 4 processes, but segfaults on 3 processes. Not sure if it's our bug or a bug in hypre. BoomerAMG works for all these cases on CPU.

We still have some issues on GPU.

@WeiqunZhang WeiqunZhang marked this pull request as ready for review June 15, 2024 03:46
@WeiqunZhang WeiqunZhang merged commit 1f038e7 into AMReX-Codes:development Jun 16, 2024
69 of 70 checks passed
@WeiqunZhang WeiqunZhang deleted the mlhypre branch June 16, 2024 04:52
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

Successfully merging this pull request may close these issues.

3 participants