<div dir="ltr">Aaah! Thanks Barry. Just to make sure though, is my assumption on the natural ordering of PETSc correct?<div><br></div><div>Thanks<br><br><div class="gmail_quote">On Mon, Apr 9, 2012 at 3:10 PM, Barry Smith <span dir="ltr">&lt;<a href="mailto:bsmith@mcs.anl.gov">bsmith@mcs.anl.gov</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5"><br>
On Apr 9, 2012, at 5:06 PM, Mohammad Mirzadeh wrote:<br>
<br>
&gt; Hi,<br>
&gt;<br>
&gt; I am using  &#39;ISPartitioningToNumbering&#39; to generate new global numbering from a partitioning indexset and I&#39;m baffled at the following situation. I&#39;m debugging my code on a simple grid consisting of 81 grid points partitioned among two processes. When I look into the partitioning indexset (i.e. looking at the indecies via ISView) I can see that 40 points have been assigned to proc 0 and 41 to processor 1. Isn&#39;t it true that when 81 points are distributed among two processors 41 should go to proc 0 and 40 to proc 1?<br>


&gt;<br>
&gt; I have based my whole code on the assumption (verified before through mailing list i guess) that natural ordering in PETSc leads to a distribution of points such that all processors get the same number of points ( [0, n/p) on proc 0, [n/p, 2n/p) on proc 1, ... ) unless n%p != 0, in which case the first k (with k = n%p) processors receive 1 point extra. Am I wrong to assume this?<br>


&gt;<br>
&gt; Thanks,<br>
&gt; Mohammad<br>
&gt;<br>
<br>
&gt; PS: Is it relevant that the partitioning indexset is obtained via ParMetis?partitiong<br>
<br>
</div></div>   Yes, ParMetis provides no guarantee about how many points would get assigned to each process.<br>
<span class="HOEnZb"><font color="#888888"><br>
   Barry<br>
<br>
<br>
</font></span></blockquote></div><br></div></div>