<div><br></div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 16 Oct 2019 at 15:54, Jed Brown via petsc-dev <<a href="mailto:petsc-dev@mcs.anl.gov">petsc-dev@mcs.anl.gov</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Stefano Zampini <<a href="mailto:stefano.zampini@gmail.com" target="_blank">stefano.zampini@gmail.com</a>> writes:<br>
<br>
> I just took a look at the ISGENERAL code. ISSetBlockSize_General just sets the block size of the layout (??)<br>
> ISGetIndices always return the data->idx memory.<br>
> So, a more profound question is: what is the model behind setting the block size on a ISGENERAL? And on a IS in general?<br>
<br>
My recollection is that it was added to support MatNest and<br>
MatGetLocalSubMatrix preserving block sizes so that MatSetValuesBlocked<br>
could be used.</blockquote><div dir="auto"><br></div><div dir="auto">We use it for this purpose (certainly ISStride, I think ISGeneral)</div><div dir="auto"><br></div><div dir="auto">LAWRENCE</div></div></div>