[petsc-users] Correlation between da_refine and pg_mg_levels

Matthew Knepley knepley at gmail.com
Thu Mar 30 15:37:04 CDT 2017


On Thu, Mar 30, 2017 at 3:04 PM, Justin Chang <jychang48 at gmail.com> wrote:

> Yeah based on my experiments it seems setting pc_mg_levels to $DAREFINE +
> 1 has decent performance.
>
> 1) is there ever a case where you'd want $MGLEVELS <= $DAREFINE? In some
> of the PETSc tutorial slides (e.g., http://www.mcs.anl.gov/
> petsc/documentation/tutorials/TutorialCEMRACS2016.pdf on slide 203/227)
> they say to use $MGLEVELS = 4 and $DAREFINE = 5, but when I ran this, it
> was almost twice as slow as if $MGLEVELS >= $DAREFINE
>

Depending on how big the initial grid is, you may want this. There is a
balance between coarse grid and fine grid work.


> 2) So I understand that one cannot refine further than one grid point in
> each direction, but is there any benefit to having $MGLEVELS > $DAREFINE by
> a lot?
>

Again, it depends on the size of the initial grid.

On really large problems, you want to use GAMG as the coarse solver, which
will move the problem onto a smaller number of nodes
so that you can coarsen further.

   Matt


> Thanks,
> Justin
>
> On Thu, Mar 30, 2017 at 2:35 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>
>>
>>   -da_refine $DAREFINE  determines how large the final problem will be.
>>
>>   By default if you don't supply pc_mg_levels then it uses $DAREFINE + 1
>> as the number of levels of MG to use; for example -da_refine 1 would result
>> in 2 levels of multigrid.
>>
>>
>> > On Mar 30, 2017, at 2:17 PM, Justin Chang <jychang48 at gmail.com> wrote:
>> >
>> > Hi all,
>> >
>> > Just a general conceptual question: say I am tinkering around with SNES
>> ex48.c and am running the program with these options:
>> >
>> > mpirun -n $NPROCS -pc_type mg -M $XSEED -N $YSEED -P $ZSEED
>> -thi_mat_type baij -da_refine $DAREFINE -pc_mg_levels $MGLEVELS
>> >
>> > I am not too familiar with mg, but it seems to me there is a very
>> strong correlation between $MGLEVELS and $DAREFINE as well as perhaps even
>> the initial coarse grid size (provided by $X/YZSEED).
>> >
>> > Is there a rule of thumb on how these parameters should be? I am
>> guessing it probably is also hardware/architectural dependent?
>> >
>> > Thanks,
>> > Justin
>>
>>
>


-- 
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20170330/bdadfd8a/attachment.html>


More information about the petsc-users mailing list