[petsc-dev] Right-preconditioned GMRES

Pierre Jolivet pierre.jolivet at enseeiht.fr
Wed Nov 6 12:57:50 CST 2019



> On 6 Nov 2019, at 7:44 PM, Matthew Knepley <knepley at gmail.com> wrote:
> 
> On Wed, Nov 6, 2019 at 1:32 PM Pierre Jolivet via petsc-dev <petsc-dev at mcs.anl.gov <mailto:petsc-dev at mcs.anl.gov>> wrote:
>> On 6 Nov 2019, at 7:30 PM, Fande Kong <fdkong.jd at gmail.com <mailto: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?
> 
> I guess Fande's point is that we should consider switching to CG or MINRES, since we are being careful about the PC.

OK, that would make sense.
Still, it is known that in some cases, ASM will not converge when RAS will (OK, that’s only true with KSPRICHARDSON…), so I’m a little bit sceptical on the default switch to BASIC.

Thanks,
Pierre

>   Thanks,
> 
>      Matt
>  
> 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>
>> > 
>> 
> 
> 
> 
> -- 
> What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.
> -- Norbert Wiener
> 
> https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20191106/ed906123/attachment.html>


More information about the petsc-dev mailing list