-
Notifications
You must be signed in to change notification settings - Fork 99
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
test and debug the agglomerated multigrid preconditioner #49
Comments
I'm down to tackle this with you. |
Thanks @joanibal, I think @Xiaosong2105 is also interested. I think all 3 of us should take a look at this and try to even improve it. Here is a brief summary of the situation: Before we did ANK+NK, we were doing multigrid with RK or DADI to converge. Once ANK and NK got robust enough, we switched to these. As a result, the main computational cost is linear solver cost. we use ILU preconditioning, so cost scales like n log n. If we can get a proper AGMG preconditioning working for the linear solvers, we can get closer to linear scaling! I did not test this, but has the potential to change the scaling directly, so the speedups will be larger as we increase cell count. What we need to do to get it working is: I have read a few good resources on this in the past. I will try to dig those up and post them here. I doubt we need to understand the theory details now just to debug it. I believe the main machinery is in place. I think debugging all the use cases will be the main work here. |
I was confused, this is not an "algebraic multigrid" its an "agglomerated multigrid", hence the acronym AGMG. Algebraic Multigrid (AMG) is purely a mathematical approach applied on linear systems, where with AGMG, we actually need to create coarser levels of the grid. Here are some resources for this: https://fun3d.larc.nasa.gov/papers/ASM_2013_multigrid_jlt.pdf |
Type of issue
Description
The agglomerated multigrid (AGMG) preconditioner was added to ADflow a while back but never got tested extensively. This functionality should be tested and debugged so that we can use it regularly, as it possibly provides better scaling.
The text was updated successfully, but these errors were encountered: