<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;"><br><div><br><blockquote type="cite"><div>On 11 Aug 2023, at 1:14 AM, Mark Adams <mfadams@lbl.gov> wrote:</div><br class="Apple-interchange-newline"><div><div dir="ltr"><div dir="ltr">BTW, nice bug report ...</div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
So in the first step it coarsens from 150e6 to 5.4e6 DOFs instead of to <br>
2.6e6 DOFs. </blockquote><div><br></div><div>Yes, this is the critical place to see what is different and going wrong.</div><div><br></div><div>My 3D tests were not that different and I see you lowered the threshold.</div><div>Note, you can set the threshold to zero, but your test is running so much differently than mine there is something else going on.</div><div>Note, the new, bad, coarsening rate of 30:1 is what we tend to shoot for in 3D.</div><div><br></div><div>So it is not clear what the problem is. Some questions:</div><div><br></div><div>* do you have a picture of this mesh to show me?</div><div>* what do you mean by Q1-Q2 elements?</div><div><br></div><div>It would be nice to see if the new and old codes are similar without aggressive coarsening.</div><div>This was the intended change of the major change in this time frame as you noticed.</div><div>If these jobs are easy to run, could you check that the old and new versions are similar with "-pc_gamg_square_graph 0 ", ( and you only need one time step).</div><div>All you need to do is check that the first coarse grid has about the same number of equations (large).</div><div><br></div><div>BTW, I am starting to think I should add the old method back as an option. I did not think this change would cause large differences.</div></div></div></div></blockquote><div><br></div><div>Not op, but that would be extremely valuable, IMHO.</div><div>This is impacting codes left, right, and center (see, e.g., another research group left wondering <a href="https://github.com/feelpp/feelpp/issues/2138">https://github.com/feelpp/feelpp/issues/2138</a>).</div><div><br></div><div>Mini-rant: as developers, we are being asked to maintain backward compatibility of the API/headers, but there is no such an enforcement for the numerics.</div><div>A breakage in the API is “easy” to fix, you get a compilation error, you either try to fix your code or stick to a lower version of PETSc.</div><div>Changes in the numerics trigger silent errors which are much more delicate to fix because users do not know whether something needs to be addressed in their code or if there is a change in PETSc.</div><div>I don’t see the point of enforcing one backward compatibility but not the other.</div><div><br></div><div>Thanks,</div><div>Pierre</div><br><blockquote type="cite"><div><div dir="ltr"><div class="gmail_quote"><div>Thanks,</div><div>Mark</div><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Note that we are providing the rigid body near nullspace, <br>
hence the bs=3 to bs=6.<br>
We have tried different values for the gamg_threshold but it doesn't <br>
really seem to significantly alter the coarsening amount in that first step.<br>
<br>
Do you have any suggestions for further things we should try/look at? <br>
Any feedback would be much appreciated<br>
<br>
Best wishes<br>
Stephan Kramer<br>
<br>
Full logs including log_view timings available from <br>
<a href="https://github.com/stephankramer/petsc-scaling/" rel="noreferrer" target="_blank">https://github.com/stephankramer/petsc-scaling/</a><br>
<br>
In particular:<br>
<br>
<a href="https://github.com/stephankramer/petsc-scaling/blob/main/before/Level_5/output_2.dat" rel="noreferrer" target="_blank">https://github.com/stephankramer/petsc-scaling/blob/main/before/Level_5/output_2.dat</a><br>
<a href="https://github.com/stephankramer/petsc-scaling/blob/main/after/Level_5/output_2.dat" rel="noreferrer" target="_blank">https://github.com/stephankramer/petsc-scaling/blob/main/after/Level_5/output_2.dat</a><br>
<a href="https://github.com/stephankramer/petsc-scaling/blob/main/before/Level_6/output_2.dat" rel="noreferrer" target="_blank">https://github.com/stephankramer/petsc-scaling/blob/main/before/Level_6/output_2.dat</a><br>
<a href="https://github.com/stephankramer/petsc-scaling/blob/main/after/Level_6/output_2.dat" rel="noreferrer" target="_blank">https://github.com/stephankramer/petsc-scaling/blob/main/after/Level_6/output_2.dat</a><br>
<a href="https://github.com/stephankramer/petsc-scaling/blob/main/before/Level_7/output_2.dat" rel="noreferrer" target="_blank">https://github.com/stephankramer/petsc-scaling/blob/main/before/Level_7/output_2.dat</a><br>
<a href="https://github.com/stephankramer/petsc-scaling/blob/main/after/Level_7/output_2.dat" rel="noreferrer" target="_blank">https://github.com/stephankramer/petsc-scaling/blob/main/after/Level_7/output_2.dat</a> <br>
<br>
</blockquote></div></div>
</div></blockquote></div><br></body></html>