Hello everyone,<br><br>Lately I&#39;ve been running some tests with a matrix-free LU-SGS-like preconditioner and I&#39;ve noticed that although, broadly speaking, it has shown very good improvements on the convergence rate of my program, it does not decrease the runtime. Quite the opposite, the bigger the problem (mesh size), the more computational costlier it gets to be applied to the system, which is fairly natural to expect. So I&#39;ve tried using the -snes_lag_preconditioner command-line option, and it did help in a way to alleviate the &quot;numerical effort&quot; of the preconditioner, but the overall runtime, in comparison with the matrix-free unpreconditioned tests, is still prohibitive.<br>
<br>Given that, I was thinking of modifying the concept of &quot;lagged preconditioning&quot; in PETSc, I mean, instead of applying the preconditioner every &quot;p&quot; non-linear iterations, I want to apply it every &quot;p&quot; linear iterations within each non-linear iteration. How can I do that?<br>
<br>Thanks in advance,<br><br>Rafael<br>