Another similar question. Running src/snes/examples/tutorials/ex1 on 2 processors with -log_summary shows<br><br>VecScatterBegin 91 1.0 1.2181e-03 1.3 0.00e+00 0.0 3.8e+01 8.0e+00 0.0e+00 4 0 49 40 0 4 0 49 40 0 0<br>
VecScatterEnd 19 1.0 3.5119e-04 3.5 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 1 0 0 0 0 1 0 0 0 0 0<br><br>There are 91 Begins but only 19 Ends. The calls are matched in the driver, so why aren't they matched when it runs?<br>
<br>John<br><br><div class="gmail_quote">On Tue, Aug 25, 2009 at 1:42 PM, John Fettig <span dir="ltr"><<a href="mailto:john.fettig@gmail.com">john.fettig@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Barry,<br><br>Thanks for the quick reply, that definitely clears it up.<br><font color="#888888"><br>John</font><div><div></div><div class="h5"><br><br><div class="gmail_quote">On Tue, Aug 25, 2009 at 1:38 PM, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@mcs.anl.gov</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>
The ILU factorization requires a matrix that is created inside the KSP operations. Plus it counts sequential matrices that are contained inside the parallel matrices so the matrix numbers will often be hard to understand.<br>
<br>
The VecScatter is created in the MatAssembly and used in the matrix vector products and then destroyed when the matrix is destroy that is why its creation and destruction are in different states.<br>
<br>
The index sets in the assembly are used to create the vecscatter. The index sets in the main stage a probably related to the preconditioner building.<br><font color="#888888">
<br>
Barry</font><div><br>
<br>
On Aug 25, 2009, at 1:25 PM, John Fettig wrote:<br>
<br>
</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div>
I'm trying to understand where matrices get created and destroyed, because I have a mismatch in the -log_summary of my code but I can't figure out where. Running ksp/ksp/examples/tutorials/ex2 with 4 processors, the log summary looks like:<br>
<br>
<br>
<br></div><div>
Object Type Creations Destructions Memory Descendants' Mem.<br>
<br>
--- Event Stage 0: Main Stage<br>
<br>
Matrix 4 4 11408 0<br>
Vec 20 21 29264 0<br>
Vec Scatter 0 1 868 0<br>
Index Set 3 3 1704 0<br>
Krylov Solver 2 2 18880 0<br>
Preconditioner 2 2 1408 0<br>
<br>
--- Event Stage 1: Assembly<br>
<br>
Vec 2 1 1304 0<br>
Vec Scatter 1 0 0 0<br>
Index Set 2 2 1052 0<br>
========================================================================================================================<br>
<br>
<br>
Why are there 4 matrices created/destroyed? Where does this happen? I only see one matrix being created/destroyed in the source, so it must be happening someplace in the KSP/PC. Also, there is a mismatch in the Vec and Vec Scatter counts in each of the stages, even though it would seem that (e.g.) all the Vec Scatters should be contained to the assembly stage.<br>
<br>
John<br>
<br>
</div></blockquote>
<br>
</blockquote></div><br>
</div></div></blockquote></div><br>