<div dir="ltr"><div>Hi Mark, are you referring to how on the coarser levels the coarsening rate seems to nearly flatline? i.e. level 2 has 4,260 rows while level 1 has 4,240 rows? I was curious about that too...</div><div><br></div><div>Not sure if this is the cause, but I have gone back and forth on what blocksize I set; I'm doing high order elements with 5 coupled equations, so the true block size in that case is 50x50. For that I had played with setting block size to either 5 (number of equations) or 50 (actual block size) and seemed to have seen a meager 20% improvement with the block size at 5, so I kind of left it there.</div><div><br></div><div>Running a much smaller variant of the same problem at lower order (block size 20 instead of 50), the -info grep you asked for is below. I'll get -info for the much larger case but it'll take a couple days.</div><div><br></div><div>For options I'm running <br>-snes_lag_jacobian 10000 -ksp_gmres_restart 100 -pc_gamg_agg_nsmooths 0 -mg_levels_ksp_type richardson -mg_levels_pc_type asm -mg_levels_ksp_max_it 1 <br>-pc_mg_cycle_type v -snes_linesearch_type bt -snes_linesearch_order 3 <br>-snes_linesearch_monitor -mg_levels_sub_pc_factor_in_place true -info</div><div><br></div><div><br></div><div>block size 5 :</div><div><br></div><div>[0] PCSetUp_GAMG(): level 0) N=2006480, n data rows=5, n data cols=5, nnz/row (ave)=100, np=16<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 20. nnz ave. (N=401296)<br>[0] PCGAMGCoarsen_AGG(): Square Graph on level 1 of 1 to square<br>[0] PCGAMGProlongator_AGG(): New grid 12947 nodes<br>[0] PCSetUp_GAMG(): 1) N=64735, n data cols=5, nnz/row (ave)=51, 16 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 10.3351 nnz ave. (N=12947)<br>[0] PCGAMGProlongator_AGG(): New grid 2671 nodes<br>[0] PCSetUp_GAMG(): 2) N=13355, n data cols=5, nnz/row (ave)=66, 16 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 12.5524 nnz ave. (N=2671)<br>[0] PCGAMGProlongator_AGG(): New grid 598 nodes<br>[0] PCSetUp_GAMG(): 3) N=2990, n data cols=5, nnz/row (ave)=65, 16 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 12.7727 nnz ave. (N=598)<br>[0] PCGAMGProlongator_AGG(): New grid 178 nodes<br>[0] PCSetUp_GAMG(): 4) N=890, n data cols=5, nnz/row (ave)=52, 16 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 8.28571 nnz ave. (N=178)<br>[0] PCGAMGProlongator_AGG(): New grid 80 nodes<br>[0] PCGAMGCreateLevel_GAMG(): Number of equations (loc) 30 with simple aggregation<br>[0] PCSetUp_GAMG(): 5) N=400, n data cols=5, nnz/row (ave)=34, 8 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 5.77778 nnz ave. (N=80)<br>[0] PCGAMGProlongator_AGG(): New grid 50 nodes<br>[0] PCGAMGCreateLevel_GAMG(): Number of equations (loc) 30 with simple aggregation<br>[0] PCSetUp_GAMG(): 6) N=250, n data cols=5, nnz/row (ave)=25, 4 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 4.76923 nnz ave. (N=50)<br>[0] PCGAMGProlongator_AGG(): New grid 36 nodes<br>[0] PCSetUp_GAMG(): 7) N=180, n data cols=5, nnz/row (ave)=18, 4 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 3.75 nnz ave. (N=36)<br>[0] PCGAMGProlongator_AGG(): New grid 33 nodes<br>[0] PCGAMGCreateLevel_GAMG(): Aggregate processors noop: new_size=4, neq(loc)=90<br>[0] PCSetUp_GAMG(): 8) N=165, n data cols=5, nnz/row (ave)=18, 4 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 3.72222 nnz ave. (N=33)<br>[0] PCGAMGProlongator_AGG(): New grid 8 nodes<br>[0] PCGAMGCreateLevel_GAMG(): Number of equations (loc) 35 with simple aggregation<br>[0] PCSetUp_GAMG(): 9) N=40, n data cols=5, nnz/row (ave)=15, 1 active pes<br>[0] PCSetUp_GAMG(): 10 levels, grid complexity = 1.02237</div><div><br></div><div><br></div><div><br></div><div>block size 20:</div><div><br></div><div>[0] PCSetUp_GAMG(): level 0) N=2006480, n data rows=20, n data cols=20, nnz/row (ave)=100, np=16<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 5. nnz ave. (N=100324)<br>[0] PCGAMGCoarsen_AGG(): Square Graph on level 1 of 1 to square<br>[0] PCGAMGProlongator_AGG(): New grid 12948 nodes<br>[0] PCSetUp_GAMG(): 1) N=258960, n data cols=20, nnz/row (ave)=205, 16 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 10.2857 nnz ave. (N=12948)<br>[0] PCGAMGProlongator_AGG(): New grid 2671 nodes<br>[0] PCSetUp_GAMG(): 2) N=53420, n data cols=20, nnz/row (ave)=266, 16 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 12.5548 nnz ave. (N=2671)<br>[0] PCGAMGProlongator_AGG(): New grid 593 nodes<br>[0] PCSetUp_GAMG(): 3) N=11860, n data cols=20, nnz/row (ave)=264, 16 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 10.8519 nnz ave. (N=593)<br>[0] PCGAMGProlongator_AGG(): New grid 181 nodes<br>[0] PCSetUp_GAMG(): 4) N=3620, n data cols=20, nnz/row (ave)=214, 16 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 8.375 nnz ave. (N=181)<br>[0] PCGAMGProlongator_AGG(): New grid 79 nodes<br>[0] PCSetUp_GAMG(): 5) N=1580, n data cols=20, nnz/row (ave)=164, 16 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 8. nnz ave. (N=79)<br>[0] PCGAMGProlongator_AGG(): New grid 43 nodes<br>[0] PCSetUp_GAMG(): 6) N=860, n data cols=20, nnz/row (ave)=100, 16 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 5. nnz ave. (N=43)<br>[0] PCGAMGProlongator_AGG(): New grid 15 nodes<br>[0] PCGAMGCreateLevel_GAMG(): Number of equations (loc) 20 with simple aggregation<br>[0] PCSetUp_GAMG(): 7) N=300, n data cols=20, nnz/row (ave)=81, 8 active pes<br>[0] PCGAMGFilterGraph(): 100.% nnz after filtering, with threshold 0., 2.66667 nnz ave. (N=15)<br>[0] PCGAMGProlongator_AGG(): New grid 1 nodes<br>[0] PCGAMGCreateLevel_GAMG(): Number of equations (loc) 0 with simple aggregation<br>[0] PCSetUp_GAMG(): 8) N=20, n data cols=20, nnz/row (ave)=20, 1 active pes<br>[0] PCSetUp_GAMG(): HARD stop of coarsening on level 7. Grid too small: 1 block nodes<br>[0] PCSetUp_GAMG(): 9 levels, grid complexity = 1.35745<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Oct 16, 2019 at 5:12 PM Mark Adams <<a href="mailto:mfadams@lbl.gov">mfadams@lbl.gov</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 dir="ltr">Thanks Barry,<br><div>Sorry I missed this.</div><div>Mark: this problem is going crazy. The (default) coarsening parameters are terrible for you. Can run with -info, grep for GAMG and send that? And please send me the gamg parameters that you are using.</div><div>Thanks,</div><div>Mark</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Oct 16, 2019 at 9:01 AM Smith, Barry F. via petsc-users <<a href="mailto:petsc-users@mcs.anl.gov" target="_blank">petsc-users@mcs.anl.gov</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"><br>
barry/2019-10-15/bug-gamg-complexity/maint <a href="https://gitlab.com/petsc/petsc/merge_requests/2179" rel="noreferrer" target="_blank">https://gitlab.com/petsc/petsc/merge_requests/2179</a><br>
<br>
<br>
<br>
> On Oct 16, 2019, at 5:29 AM, Mark Lohry <<a href="mailto:mlohry@gmail.com" target="_blank">mlohry@gmail.com</a>> wrote:<br>
> <br>
> Well that was a quick late night bug fix. Thanks Barry, I'll try it out.<br>
> <br>
> Just to confirm: You are running with with default double precision numbers and have used the configure option --with-64-bit-indices ?<br>
> <br>
> Double precision floats, but 32 bit indices. I realize I'm playing with fire here, but I'm bumping very close to available memory limits at this scale and 64 bit indices tips me over. I figure integer index overflows would probably show a catastrophic failure, but all output looks sane.<br>
> <br>
> I see you are using MATMFFD as the operator and MPIAIJ as the matrix from which to build the preconditioner? This is not suppose to cause any difficulties since the complexity computation code uses the second matrix, that is the MPAIJ matrix to get the complexity information.<br>
> <br>
> Right, I'm using MATMFFD for the operator, and using a snes_lag_jacobian with SNESComputeJacobianDefaultColor for the matrix used to build to preconditioner. The actual behavior is exactly what I'd expect from smaller runs and the results look good, so it sounds like what you describe.<br>
> <br>
> On Wed, Oct 16, 2019 at 12:17 AM Smith, Barry F. <<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>> wrote:<br>
> <br>
> I think I now see the bug: the code uses PetscInt lev, nnz0 = -1; which will overflow. It should be using PetscLogDouble for nnz0<br>
> <br>
> You can try changing that one place in the code and see that it now prints a reasonable value for complexity. <br>
> <br>
> I will prepare a MR for maint to fix the bug permanently.<br>
> <br>
> Barry<br>
> <br>
> <br>
> static PetscErrorCode PCMGGetGridComplexity(PC pc, PetscReal *gc)<br>
> {<br>
> PetscErrorCode ierr;<br>
> PC_MG *mg = (PC_MG*)pc->data;<br>
> PC_MG_Levels **mglevels = mg->levels;<br>
> PetscInt lev, nnz0 = -1;<br>
> MatInfo info;<br>
> PetscFunctionBegin;<br>
> if (!mg->nlevels) SETERRQ(PETSC_COMM_SELF,PETSC_ERR_PLIB,"MG has no levels");<br>
> for (lev=0, *gc=0; lev<mg->nlevels; lev++) {<br>
> Mat dB;<br>
> ierr = KSPGetOperators(mglevels[lev]->smoothd,NULL,&dB);CHKERRQ(ierr);<br>
> ierr = MatGetInfo(dB,MAT_GLOBAL_SUM,&info);CHKERRQ(ierr); /* global reduction */<br>
> *gc += (PetscReal)info.nz_used;<br>
> if (lev==mg->nlevels-1) nnz0 = info.nz_used;<br>
> }<br>
> if (nnz0) *gc /= (PetscReal)nnz0;<br>
> else *gc = 0;<br>
> PetscFunctionReturn(0);<br>
> }<br>
> <br>
> <br>
> <br>
> > On Oct 15, 2019, at 11:11 PM, Smith, Barry F. <<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>> wrote:<br>
> > <br>
> > <br>
> > Mark,<br>
> > <br>
> > It may be caused by some overflow in the calculations somewhere due to your very large sizes and nonzeros but I could not see anything based on a quick inspection of the code. We seem to use double to store the counts which normally would be more than sufficient to hold the results without overflow. Unless somewhere there is a mistaken use of int that causes a problem.<br>
> > <br>
> > Just to confirm: You are running with with default double precision numbers and have used the configure option --with-64-bit-indices ? <br>
> > <br>
> > I see you are using MATMFFD as the operator and MPIAIJ as the matrix from which to build the preconditioner? This is not suppose to cause any difficulties since the complexity computation code uses the second matrix, that is the MPAIJ matrix to get the complexity information. <br>
> > <br>
> > There is definitely a bug but I am hard pressed to suggest how to find it since it seems only to be expressed in your giant runs. <br>
> > <br>
> > Barry<br>
> > <br>
> > <br>
> > <br>
> > <br>
> > <br>
> >> On Oct 15, 2019, at 9:16 PM, Mark Lohry via petsc-users <<a href="mailto:petsc-users@mcs.anl.gov" target="_blank">petsc-users@mcs.anl.gov</a>> wrote:<br>
> >> <br>
> >> I'm running some larger unsteady problems and trying to eek out some better GAMG performance. As is, at very small time steps, ASM preconditioner with ILU(0) is maybe 20% more efficient than my naive GAMG setup, which gives me hope that some tuning of GAMG can give some advantage. Convergence overall seems quite good, and light years better than ASM/ILU at larger time steps.<br>
> >> <br>
> >> So looking through the manual and see a note that "grid complexity should be well under 2.0 and preferably around 1.3 or lower". I check ksp_view and see:<br>
> >> Complexity: grid = -40.5483<br>
> >> <br>
> >> Is something funny happening here?<br>
> >> <br>
> >> Pasting whole -ksp_view below:<br>
> >> <br>
> >> KSP Object: 1920 MPI processes<br>
> >> type: fgmres<br>
> >> restart=100, using Classical (unmodified) Gram-Schmidt Orthogonalization with no iterative refinement<br>
> >> happy breakdown tolerance 1e-30<br>
> >> maximum iterations=30, initial guess is zero<br>
> >> tolerances: relative=0.0001, absolute=1e-06, divergence=10.<br>
> >> right preconditioning<br>
> >> using UNPRECONDITIONED norm type for convergence test<br>
> >> PC Object: 1920 MPI processes<br>
> >> type: gamg<br>
> >> type is MULTIPLICATIVE, levels=20 cycles=v<br>
> >> Cycles per PCApply=1<br>
> >> Using externally compute Galerkin coarse grid matrices<br>
> >> GAMG specific options<br>
> >> Threshold for dropping small values in graph on each level = 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. <br>
> >> Threshold scaling factor for each level not specified = 1.<br>
> >> AGG specific options<br>
> >> Symmetric graph false<br>
> >> Number of levels to square graph 1<br>
> >> Number smoothing steps 0<br>
> >> Complexity: grid = -40.5483<br>
> >> Coarse grid solver -- level -------------------------------<br>
> >> KSP Object: (mg_coarse_) 1920 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_coarse_) 1920 MPI processes<br>
> >> type: bjacobi<br>
> >> number of blocks = 1920<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_coarse_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=1, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_coarse_sub_) 1 MPI processes<br>
> >> type: lu<br>
> >> out-of-place factorization<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> using diagonal shift on blocks to prevent zero pivot [INBLOCKS]<br>
> >> matrix ordering: nd<br>
> >> factor fill ratio given 5., needed 1.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=15, cols=15, bs=5<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=175, allocated nonzeros=175<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 3 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=15, cols=15, bs=5<br>
> >> total: nonzeros=175, allocated nonzeros=175<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 3 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=15, cols=15, bs=5<br>
> >> total: nonzeros=175, allocated nonzeros=175<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node (on process 0) routines: found 3 nodes, limit used is 5<br>
> >> Down solver (pre-smoother) on level 1 -------------------------------<br>
> >> KSP Object: (mg_levels_1_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_1_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_1_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_1_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=4240, cols=4240<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=64800, allocated nonzeros=64800<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 848 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=4240, cols=4240<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=64800, allocated nonzeros=64800<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 848 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=4240, cols=4240, bs=5<br>
> >> total: nonzeros=64800, allocated nonzeros=64800<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using nonscalable MatPtAP() implementation<br>
> >> using I-node (on process 0) routines: found 848 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 2 -------------------------------<br>
> >> KSP Object: (mg_levels_2_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_2_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_2_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_2_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=4260, cols=4260<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=65200, allocated nonzeros=65200<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 852 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=4260, cols=4260<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=65200, allocated nonzeros=65200<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 852 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=4260, cols=4260, bs=5<br>
> >> total: nonzeros=65200, allocated nonzeros=65200<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node (on process 0) routines: found 852 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 3 -------------------------------<br>
> >> KSP Object: (mg_levels_3_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_3_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_3_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_3_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=5440, cols=5440<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=90950, allocated nonzeros=90950<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1088 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=5440, cols=5440<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=90950, allocated nonzeros=90950<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1088 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=5440, cols=5440, bs=5<br>
> >> total: nonzeros=90950, allocated nonzeros=90950<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using nonscalable MatPtAP() implementation<br>
> >> using I-node (on process 0) routines: found 1088 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 4 -------------------------------<br>
> >> KSP Object: (mg_levels_4_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_4_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_4_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_4_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=5485, cols=5485<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=93075, allocated nonzeros=93075<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1097 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=5485, cols=5485<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=93075, allocated nonzeros=93075<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1097 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=5485, cols=5485, bs=5<br>
> >> total: nonzeros=93075, allocated nonzeros=93075<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using nonscalable MatPtAP() implementation<br>
> >> using I-node (on process 0) routines: found 1097 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 5 -------------------------------<br>
> >> KSP Object: (mg_levels_5_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_5_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_5_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_5_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=5685, cols=5685<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=98925, allocated nonzeros=98925<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1137 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=5685, cols=5685<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=98925, allocated nonzeros=98925<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1137 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=5685, cols=5685, bs=5<br>
> >> total: nonzeros=98925, allocated nonzeros=98925<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using nonscalable MatPtAP() implementation<br>
> >> using I-node (on process 0) routines: found 1137 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 6 -------------------------------<br>
> >> KSP Object: (mg_levels_6_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_6_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_6_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_6_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=5825, cols=5825<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=102325, allocated nonzeros=102325<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1165 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=5825, cols=5825<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=102325, allocated nonzeros=102325<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1165 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=5825, cols=5825, bs=5<br>
> >> total: nonzeros=102325, allocated nonzeros=102325<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using nonscalable MatPtAP() implementation<br>
> >> using I-node (on process 0) routines: found 1165 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 7 -------------------------------<br>
> >> KSP Object: (mg_levels_7_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_7_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_7_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_7_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=5925, cols=5925<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=104925, allocated nonzeros=104925<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1185 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=5925, cols=5925<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=104925, allocated nonzeros=104925<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1185 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=5925, cols=5925, bs=5<br>
> >> total: nonzeros=104925, allocated nonzeros=104925<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using nonscalable MatPtAP() implementation<br>
> >> using I-node (on process 0) routines: found 1185 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 8 -------------------------------<br>
> >> KSP Object: (mg_levels_8_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_8_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_8_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_8_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=6050, cols=6050<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=110200, allocated nonzeros=110200<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1210 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=6050, cols=6050<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=110200, allocated nonzeros=110200<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1210 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=6050, cols=6050, bs=5<br>
> >> total: nonzeros=110200, allocated nonzeros=110200<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node (on process 0) routines: found 1210 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 9 -------------------------------<br>
> >> KSP Object: (mg_levels_9_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_9_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_9_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_9_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=6890, cols=6890<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=153200, allocated nonzeros=153200<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1378 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=6890, cols=6890<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=153200, allocated nonzeros=153200<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1378 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=6890, cols=6890, bs=5<br>
> >> total: nonzeros=153200, allocated nonzeros=153200<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node (on process 0) routines: found 1378 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 10 -------------------------------<br>
> >> KSP Object: (mg_levels_10_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_10_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_10_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_10_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=7395, cols=7395<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=180025, allocated nonzeros=180025<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1479 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=7395, cols=7395<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=180025, allocated nonzeros=180025<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1479 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=7395, cols=7395, bs=5<br>
> >> total: nonzeros=180025, allocated nonzeros=180025<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node (on process 0) routines: found 1479 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 11 -------------------------------<br>
> >> KSP Object: (mg_levels_11_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_11_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_11_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_11_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=8960, cols=8960<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=259800, allocated nonzeros=259800<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1792 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=8960, cols=8960<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=259800, allocated nonzeros=259800<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 1792 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=8960, cols=8960, bs=5<br>
> >> total: nonzeros=259800, allocated nonzeros=259800<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node (on process 0) routines: found 1792 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 12 -------------------------------<br>
> >> KSP Object: (mg_levels_12_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_12_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_12_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_12_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=1795, cols=1795<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=33275, allocated nonzeros=33275<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 359 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=1795, cols=1795<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=33275, allocated nonzeros=33275<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 359 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=11825, cols=11825, bs=5<br>
> >> total: nonzeros=403125, allocated nonzeros=403125<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node (on process 0) routines: found 359 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 13 -------------------------------<br>
> >> KSP Object: (mg_levels_13_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_13_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_13_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_13_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=340, cols=340<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=3500, allocated nonzeros=3500<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 68 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=340, cols=340<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=3500, allocated nonzeros=3500<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 68 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=17210, cols=17210, bs=5<br>
> >> total: nonzeros=696850, allocated nonzeros=696850<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node (on process 0) routines: found 68 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 14 -------------------------------<br>
> >> KSP Object: (mg_levels_14_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_14_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_14_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_14_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=125, cols=125<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=625, allocated nonzeros=625<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 25 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=125, cols=125<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=625, allocated nonzeros=625<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 25 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=29055, cols=29055, bs=5<br>
> >> total: nonzeros=1475675, allocated nonzeros=1475675<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node (on process 0) routines: found 25 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 15 -------------------------------<br>
> >> KSP Object: (mg_levels_15_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_15_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_15_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_15_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=45, cols=45<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=225, allocated nonzeros=225<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 9 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=45, cols=45<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=225, allocated nonzeros=225<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 9 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=62935, cols=62935, bs=5<br>
> >> total: nonzeros=3939025, allocated nonzeros=3939025<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node (on process 0) routines: found 9 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 16 -------------------------------<br>
> >> KSP Object: (mg_levels_16_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_16_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_16_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_16_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=55, cols=55<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=725, allocated nonzeros=725<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 11 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=55, cols=55<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=725, allocated nonzeros=725<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 11 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=205010, cols=205010, bs=5<br>
> >> total: nonzeros=14780300, allocated nonzeros=14780300<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using scalable MatPtAP() implementation<br>
> >> using I-node (on process 0) routines: found 11 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 17 -------------------------------<br>
> >> KSP Object: (mg_levels_17_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_17_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_17_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_17_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=360, cols=360<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=14350, allocated nonzeros=14350<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 72 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=360, cols=360<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=14350, allocated nonzeros=14350<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 72 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=921310, cols=921310, bs=5<br>
> >> total: nonzeros=63203300, allocated nonzeros=63203300<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using scalable MatPtAP() implementation<br>
> >> using I-node (on process 0) routines: found 72 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 18 -------------------------------<br>
> >> KSP Object: (mg_levels_18_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_18_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_18_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_18_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=2130, cols=2130<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=87950, allocated nonzeros=87950<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 426 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=2130, cols=2130<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=87950, allocated nonzeros=87950<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 426 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=4473930, cols=4473930, bs=5<br>
> >> total: nonzeros=232427300, allocated nonzeros=232427300<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using nonscalable MatPtAP() implementation<br>
> >> using I-node (on process 0) routines: found 426 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> Down solver (pre-smoother) on level 19 -------------------------------<br>
> >> KSP Object: (mg_levels_19_) 1920 MPI processes<br>
> >> type: richardson<br>
> >> damping factor=1.<br>
> >> maximum iterations=1, nonzero initial guess<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_19_) 1920 MPI processes<br>
> >> type: asm<br>
> >> total subdomain blocks = 1920, amount of overlap = 0<br>
> >> restriction/interpolation type - RESTRICT<br>
> >> Local solve is same for all blocks, in the following KSP and PC objects:<br>
> >> KSP Object: (mg_levels_19_sub_) 1 MPI processes<br>
> >> type: preonly<br>
> >> maximum iterations=10000, initial guess is zero<br>
> >> tolerances: relative=1e-05, absolute=1e-50, divergence=10000.<br>
> >> left preconditioning<br>
> >> using NONE norm type for convergence test<br>
> >> PC Object: (mg_levels_19_sub_) 1 MPI processes<br>
> >> type: ilu<br>
> >> in-place factorization<br>
> >> 0 levels of fill<br>
> >> tolerance for zero pivot 2.22045e-14<br>
> >> matrix ordering: natural<br>
> >> factor fill ratio given 0., needed 0.<br>
> >> Factored matrix follows:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=179050, cols=179050<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=42562500, allocated nonzeros=42562500<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 35810 nodes, limit used is 5<br>
> >> linear system matrix = precond matrix:<br>
> >> Mat Object: 1 MPI processes<br>
> >> type: seqaij<br>
> >> rows=179050, cols=179050<br>
> >> package used to perform factorization: petsc<br>
> >> total: nonzeros=42562500, allocated nonzeros=42562500<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node routines: found 35810 nodes, limit used is 5<br>
> >> linear system matrix followed by preconditioner matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mffd<br>
> >> rows=347149550, cols=347149550<br>
> >> Matrix-free approximation:<br>
> >> err=1.49012e-08 (relative error in function evaluation)<br>
> >> Using wp compute h routine<br>
> >> Does not compute normU<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=347149550, cols=347149550, bs=5<br>
> >> total: nonzeros=86758607500, allocated nonzeros=86758607500<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node (on process 0) routines: found 35810 nodes, limit used is 5<br>
> >> Up solver (post-smoother) same as down solver (pre-smoother)<br>
> >> linear system matrix followed by preconditioner matrix:<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mffd<br>
> >> rows=347149550, cols=347149550<br>
> >> Matrix-free approximation:<br>
> >> err=1.49012e-08 (relative error in function evaluation)<br>
> >> Using wp compute h routine<br>
> >> Does not compute normU<br>
> >> Mat Object: 1920 MPI processes<br>
> >> type: mpiaij<br>
> >> rows=347149550, cols=347149550, bs=5<br>
> >> total: nonzeros=86758607500, allocated nonzeros=86758607500<br>
> >> total number of mallocs used during MatSetValues calls =0<br>
> >> using I-node (on process 0) routines: found 35810 nodes, limit used is 5<br>
> >> Line search: Using full step: fnorm 2.025875581923e+03 gnorm 2.801672254495e+00<br>
> >> 1 SNES Function norm 2.801672254495e+00<br>
> > <br>
> <br>
<br>
</blockquote></div>
</blockquote></div>