<div dir="ltr">Hi Pierre,<div><br></div><div>Sorry I missed this post and your issues were brought to my attention today.</div><div><br></div><div>First, the classic version is not supported well. The postdoc that wrote the code is long gone and I don't know the code at all.</div><div>It is really a reference implementation that someone could build on and is not meant for production.</div><div>In 10 years you are the first user that has connected us.</div><div><br></div><div>The hypre package is a very good AMG solver and it uses classical AMG as the main solver.</div><div>I wrote GAMG ("agg") which is a smoothed aggregation AMG solver and is very different from classical.</div><div>I would suggest you move to hypre or '-pc_gamg_type agg'.</div><div><br></div><div>The coarsening was developed in this time frame and there was a lot of churn as a new strategy for aggressive coarsening did not work well for some users and I had to add the old method in and then made it the default (again).</div><div>This change missed v3.20, but you can get the old aggressive strategy with '-pc_gamg_aggressive_square_graph'.</div><div>Check with -options_left to check that it is being used.</div><div><br></div><div>As far as your output (nice formatting, thank you), the coarse grid is smaller in the new code.</div><div>            rows=41, cols=41                                                                       |             rows=30, cols=30<br></div><div>"square graph" should fix this.</div><div><br></div><div>You can also try not using aggressive coarsening with:</div><div>You could try '-pc_gamg_aggressive_coarsening 0'</div><div><br></div><div>Let me know how it goes and let's try to get you into a more sustainable state ... I really try not to change this code but sometimes need to.</div><div><br></div><div>Thanks,</div><div>Mark</div><div><br></div><div><br></div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Oct 9, 2023 at 10:43 AM LEDAC Pierre <<a href="mailto:Pierre.LEDAC@cea.fr">Pierre.LEDAC@cea.fr</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg2203274150731110762">




<div dir="ltr">
<div id="m_4559298248948725813divtagdefaultwrapper" style="font-size:12pt;color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif" dir="ltr">
<p>Hello all,</p>
<p><br>
</p>
<p>I am struggling to find the same convergence in iterations when using classical algebric multigrid in my code with PETSc 3.20 compared to PETSc 3.14.</p>
<p><br>
</p>
<p>I am using in order to solve a Poisson system:</p>
<p><b>-ksp_type cg -pc_type gamg -<span>pc_gamg_type</span> classical</b><br>
</p>
<p><br>
</p>
<p>I read the different releases notes between 3.15 and 3.20:</p>
<p><a href="https://petsc.org/release/changes/317" id="m_4559298248948725813LPlnk566993" target="_blank">https://petsc.org/release/changes/317</a>
<br>
</p>
<p><a href="https://petsc.org/main/manualpages/PC/PCGAMGSetThreshold/" target="_blank">https://petsc.org/main/manualpages/PC/PCGAMGSetThreshold/</a><br>
</p>
<p><br>
</p>
<p>And have a look at the archive mailing list (especially this one: <a href="https://www.mail-archive.com/petsc-users@mcs.anl.gov/msg46688.html" target="_blank">
https://www.mail-archive.com/petsc-users@mcs.anl.gov/msg46688.html</a>) <br>
</p>
<p>so I added some other options to try to have the same behaviour than PETSc 3.14:</p>
<p><br>
</p>
<p></p>
<p><b>-ksp_type cg -pc_type gamg -<span>pc_gamg_type</span> classical </b><span style="color:rgb(255,0,0)">-</span><span><span style="color:rgb(255,0,0)">mg_levels_pc_type sor -</span><span style="color:rgb(255,0,0)">pc_gamg_threshold</span><span style="color:rgb(255,0,0)">
 0.</span></span></p>
<p></p>
<p><br>
</p>
<p>It improves the convergence but there still a different convergence though (26 vs 18 iterations).</p>
<p>On another of my test case, the number of levels is different (e.g. 6 vs 4) also, and here it is the same, but with a different coarsening according to the output from the -ksp_view option</p>
<br>
<p><b></b>The main point is that the convergence dramatically degrades in parallel on a third test case, so I can't upgrade to PETSc 3.20 for now unhappily.<br>
</p>
<br>
<p>I send you the partial report (petsc_314_vs_petsc_320.ksp_view) with -ksp_view (left PETSc 3.14, right PETSc 3.20) and the configure/command line options used (in petsc_XXX_petsc.TU files).</p>
<p><br>
</p>
<p>Could my issue related to the following 3.18 change ? I have not tried the first one.</p>
<p></p>
<ul style="box-sizing:border-box;margin-bottom:1rem;margin-top:0px;color:rgb(50,50,50);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:15px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:left;text-indent:0px;text-transform:none;word-spacing:0px;white-space:normal;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial">
<li style="box-sizing:border-box">
<p style="box-sizing:border-box;margin-bottom:0.25rem;margin-top:0px;font-size:1em">
Remove<span> </span><code class="gmail-notranslate" style="box-sizing:border-box;font-size:13.125px;border-radius:0.25rem;padding:0.1rem 0.25rem"><span style="box-sizing:border-box;white-space:nowrap">PCGAMGSetSymGraph()</span></code><span> </span>and<span> </span><code class="gmail-notranslate" style="box-sizing:border-box;font-size:13.125px;border-radius:0.25rem;padding:0.1rem 0.25rem"><span style="box-sizing:border-box;white-space:nowrap">-pc_gamg_sym_graph</span></code>.
<span style="color:rgb(255,0,0)">The user should now indicate symmetry and structural symmetry using</span><span style="color:rgb(255,0,0)"> </span><code class="gmail-notranslate" style="box-sizing:border-box;font-size:13.125px;border-radius:0.25rem;padding:0.1rem 0.25rem"><span style="box-sizing:border-box;white-space:nowrap"><a href="https://petsc.org/release/manualpages/Mat/MatSetOption/" style="box-sizing:border-box;background-color:transparent;text-decoration:none" target="_blank"><span style="color:rgb(255,0,0)">MatSetOption</span></a><span style="color:rgb(255,0,0)">()</span></span></code><span style="color:rgb(255,0,0)"> </span><span style="color:rgb(255,0,0)">and
 GAMG will symmetrize the graph if a symmetric options is not set</span></p>
</li><li style="box-sizing:border-box">
<p style="box-sizing:border-box;margin-bottom:0px;margin-top:0px;font-size:1em">
Change<span> </span><code class="gmail-notranslate" style="box-sizing:border-box;font-size:13.125px;border-radius:0.25rem;padding:0.1rem 0.25rem"><span style="box-sizing:border-box;white-space:nowrap">-pc_gamg_reuse_interpolation</span></code><span style="color:rgb(255,0,0)"> </span><span style="color:rgb(255,0,0)">default
 from false to true.</span></p>
</li></ul>
<br>
<p></p>
<p>Any advice would be greatly appreciated,<br>
</p>
<p><br>
</p>
<div id="m_4559298248948725813Signature">
<div id="m_4559298248948725813divtagdefaultwrapper" dir="ltr" style="font-size:12pt;color:rgb(0,0,0);font-family:Calibri,Helvetica,sans-serif,EmojiFont,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Segoe UI Symbol","Android Emoji",EmojiSymbols">
<div style="font-family:Tahoma;font-size:13px">
<div><font size="2"><span style="font-size:10pt">
<div>Pierre LEDAC<br>
Commissariat à l’énergie atomique et aux énergies alternatives<br>
Centre de SACLAY<br>
DES/ISAS/DM2S/SGLS/LCAN<br>
Bâtiment 451 – point courrier n°43<br>
F-91191 Gif-sur-Yvette<br>
+33 1 69 08 04 03<br>
+33 6 83 42 05 79</div>
</span></font></div>
</div>
</div>
</div>
</div>
</div>

</div></blockquote></div>