1) valgrind
2) confirm the IS are identical for ASM and GASM (this is easy on one process).
Confirm the KSP,PC for subdomains are the same.
3) run with convergence monitoring for two subdomains (with ASM and GASM), turn
on richardson on the inner solvers so it will plot the
convergence history.
Preconditioned residual falling nicely while true residual gets stuck usually
indicates 1) null space not properly handled 2) nonlinearity (unintentional)
inside PC 3) very small pivots in factorization
What happens if you use -ksp_type fgmres ? Same behavior? -ksp_pc_side right
(with
Boyce,
I noticed that in the KSPView you sent the solver inside GASM was fgmres, I
don't know why! This would explain why the outer GMRES had inconsistent
residuals. If you switch the inner solver to preonly + LU for GASM what
happens?
> On Apr 30, 2019, at 11:36 AM, Boyce Griffith
My question about the quality of the solution was to check if the model
(eg, mesh) was messed up, not if the algebraic error was acceptable. So
does an exact solution look OK. Using LU if you need to. If there is say a
singularity it will mess up the solver as well as give you a bad solution.
On
When I said it was singular I was looking at "preconditioned residual norm
to an rtol of 1e-12. If I look at the true residual norm, however, it
stagnates around 1e-4."
This is not what I am seeing in this output. It is just a poor PC. The big
drop in the residual at the beginning is suspicious.
>
>
>
>
> Allowing GASM to construct the "outer" subdomains from the non-overlapping
> "inner" subdomains, and using "exact" subdomain solvers (subdomain KSPs are
> using FGMRES+ILU with an rtol of 1e-12), I get convergence in ~2 iterations
> in the preconditioned residual norm to an rtol of
I believe so. Probably you've already done this but you can look at
src/ksp/ksp/examples/tutorials ex62.c and ex64.c for sample usage.
Do you get the same (correct) behavior for both when you use inner_ises but
no outer (let GASM/ASM determine it)? What if you use the same outer as inner?
I am trying to setup a GASM preconditioner and am running into some difficulty
getting convergence even with exact subdomain solvers. I am just doing things
in serial now, and tried switching to ASM, and get convergence. I am wondering
if I am misunderstanding the GASM interface. If inner_ises