<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Jun 29, 2017 at 3:38 PM, Lucas Clemente Vella <span dir="ltr"><<a href="mailto:lvella@gmail.com" target="_blank">lvella@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi, I have a problem that is easily solvable with 8 processes, (by easily I mean with few iterations). Using PCFIELDSPLIT, I get 2 outer iterations and 6 inner iterations, reaching residual norm of 1e-8. The system have 786432 unknowns in total, and the solver setting is given by:<br><br>    PetscOptionsInsertString(NULL,<span class="m_-4455441475856411740gmail-im"><br>        "-ksp_type fgmres "<br>        "-pc_type fieldsplit "<br>        "-pc_fieldsplit_detect_saddle_<wbr>point "<br>        "-pc_fieldsplit_type schur "<br>        "-pc_fieldsplit_schur_fact_typ<wbr>e full "<br>        "-pc_fieldsplit_schur_precondi<wbr>tion self "<br>        "-fieldsplit_0_ksp_type bcgs "<br>        "-fieldsplit_0_pc_type hypre "<br>        "-fieldsplit_1_ksp_type gmres "<br>        "-fieldsplit_1_pc_type lsc "<br>        "-fieldsplit_1_lsc_pc_type hypre "<br></span>        "-fieldsplit_1_lsc_pc_hypre_bo<wbr>omeramg_cycle_type w");<div><br></div><div>Problem is, it is slow, (compared to less complex systems, solvable simply with bcgs+hypre), and to try to speed things up, I've ran with 64 processes, which gives only 12288 unknowns per process. In this setting, inner iteration reaches the maximum of 15 iterations I set, and the outer iteration couldn't lower the residual norm from 1e2 after 20 iterations.<br><br>Is this supposed to happen? Increasing the number of parallel processes is supposed to worsen the solver performance? I just want to clear this issue from Petsc and Hypre side if possible, so if I ever experience such behavior again, I can be sure my code is wrong...</div></div></blockquote><div><br></div><div>1) For figuring out convergence issues, I would start with a smaller problem, so you can run lots of them</div><div><br></div><div>2) For any questions about convergence, we need to see the output of</div><div><br></div><div>  -ksp_view -ksp_monitor_true_residual -fieldsplit_1_ksp_monitor_true_residual -ksp_converged_reason</div><div><br></div><div>3) Please start with -fieldsplit_0_pc_type lu so we can just look at the Schur complement system</div><div><br></div><div>4) It sounds like the strength of your Schur complement preconditioner is not uniform in the size of the problem. Why</div><div>    do you think LSC would be a good idea? Also, 'self' preconditioning for many equations, like Stokes, is not uniform</div><div>    in problem size.</div><div><br></div><div>5) What are your equations?</div><div><br></div><div>6) I would start with -fieldsplit_1_pc_type lu, which will test your PC matrix, and after that works, change things one at a time.</div><div><br></div><div>  Thanks,</div><div><br></div><div>    Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><span class="HOEnZb"><font color="#888888"><div>-- <br><div class="m_-4455441475856411740gmail-m_7941801565143948590gmail-m_7828426361706057140gmail_signature">Lucas Clemente Vella<br><a href="mailto:lvella@gmail.com" target="_blank">lvella@gmail.com</a></div>
</div></font></span></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div><div><br></div><div><a href="http://www.caam.rice.edu/~mk51/" target="_blank">http://www.caam.rice.edu/~mk51/</a><br></div></div></div>
</div></div>