[petsc-dev] Right-preconditioned GMRES
Pierre Jolivet
pierre.jolivet at enseeiht.fr
Wed Nov 6 12:32:08 CST 2019
> On 6 Nov 2019, at 7:30 PM, Fande Kong <fdkong.jd at gmail.com> wrote:
>
> Even if both the linear operator and the preconditioner operator are symmetric, the preconditioned operator by RAS will NOT be symmetric so that CG is not applicable.
>
> RAS keeps overlapping elements during restriction but discards them when doing interpolation, which leads to an unsymmetric preconditioned operator.
Of course.
What’s your point?
Thanks,
Pierre
> Fande,
>
>
>
> On Wed, Nov 6, 2019 at 11:13 AM Pierre Jolivet via petsc-dev <petsc-dev at mcs.anl.gov <mailto:petsc-dev at mcs.anl.gov>> wrote:
> I need to figure this out myself first.
> In the meantime, here is another (PCASM related) question for you: why is PCASMType switched to BASIC when using a symmetric Pmat? (I guess I don’t have to tell you about the performance of RAS vs. ASM)
> To me, that would make sense if the default KSP was also switched to CG instead of GMRES if the Pmat and Amat were symmetric, but I don’t think this is the case.
>
> Thanks,
> Pierre
>
> > On 24 Oct 2019, at 5:40 PM, Smith, Barry F. <bsmith at mcs.anl.gov <mailto:bsmith at mcs.anl.gov>> wrote:
> >
> >
> > Send the code and exact instructions to run a "good" and a "bad" ASM
> >
> > Barry
> >
> >
> >> On Oct 14, 2019, at 10:44 AM, Pierre Jolivet <pierre.jolivet at enseeiht.fr <mailto:pierre.jolivet at enseeiht.fr>> wrote:
> >>
> >> Here are the three logs.
> >> FGMRES also gives a wrong first iterate.
> >> I think Mark was right in the sense that the problem is _most likely_ in my RHS.
> >> But I need to figure out why I only get this problem with right-preconditioned KSPs with restrict or none.
> >>
> >> Thanks,
> >> Pierre
> >>
> >>
> >>
> >>> On 13 Oct 2019, at 8:16 PM, Smith, Barry F. <bsmith at mcs.anl.gov <mailto:bsmith at mcs.anl.gov>> wrote:
> >>>
> >>>
> >>> Is this one process with one subdomain? (And hence no meaningful overlap since there is nothing to overlap?) And you expect to get the "exact" answer on one iteration?
> >>>
> >>> Please run the right preconditioned GMRES with -pc_asm_type [restrict and basic and none] -ksp_monitor_true_solution and send the output for the three cases.
> >>>
> >>> For kicks you can also try FGMRES (which always uses right preconditioning) to see if the same problem appears.
> >>>
> >>> Barry
> >>>
> >>>
> >>>> On Oct 13, 2019, at 2:41 AM, Pierre Jolivet via petsc-dev <petsc-dev at mcs.anl.gov <mailto:petsc-dev at mcs.anl.gov>> wrote:
> >>>>
> >>>> Hello,
> >>>> I’m struggling to understand the following weirdness with PCASM with exact subdomain solvers.
> >>>> I’m dealing with a very simple Poisson problem with Dirichlet + Neumann BCs.
> >>>> If I use PCBJACOBI + KSPPREONLY or 1 iteration of GMRES either preconditioned on the right or on the left, I get the expected result, cf. attached screenshot.
> >>>> If I use PCASM + KSPPREONLY or 1 iteration of GMRES preconditioned on the left, I get the expected result as well.
> >>>> However, with PCASM + 1 iteration of GMRES preconditioned on the right, I don’t get what I should (I believe).
> >>>> Furthermore, this problem is specific to -pc_asm_type restrict,none (I get the expected result with basic,interpolate).
> >>>>
> >>>> Any hint?
> >>>>
> >>>> Thanks,
> >>>> Pierre
> >>>>
> >>>> $ -sub_pc_type lu -ksp_max_it 1 -ksp_type gmres -pc_type bjacobi -ksp_pc_side right -> bjacobi_OK
> >>>> $ -sub_pc_type lu -ksp_max_it 1 -ksp_type gmres -pc_type asm -ksp_pc_side left -> asm_OK
> >>>> $ -sub_pc_type lu -ksp_max_it 1 -ksp_type gmres -pc_type asm -ksp_pc_side right -> asm_KO
> >>>>
> >>>> <bjacobi_OK.png><asm_OK.png><asm_KO.png>
> >>>
> >>
> >> <dump-basic><dump-none><dump-restrict>
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20191106/3ce4c461/attachment.html>
More information about the petsc-dev
mailing list