Yes sorry I mean 64 cores.<br><br><div class="gmail_quote">On Thu, Sep 6, 2012 at 11:49 AM, Jed Brown <span dir="ltr"><<a href="mailto:five9a2@gmail.com" target="_blank">five9a2@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 class="im"><p><br>
On Sep 6, 2012 1:12 PM, "Ronald M. Caplan" <<a href="mailto:caplanr@predsci.com" target="_blank">caplanr@predsci.com</a>> wrote:<br>
><br>
> Hi,<br>
><br>
> I am trying to implement petsc into an existing (very large) FORTRAN code which splits a 3D grid in each dimension (so for a 100x100x100 problem on 4 cores, each core gets a 25x25x25 part of the grid). <br></p>
</div><p>Do you mean 4^3 = 64 cores?<br></p><div class="HOEnZb"><div class="h5">
<p>><br>
> The default partitioning for petsc just assigns contiguous rows of the coefficient matrix to each core which is hampering performance.  <br>
><br>
> From looking around I have found that there are AO routines and DM routines in petsc.<br>
><br>
> What is the difference between using either of them for my problem?  <br>
> Should I be using DM to partition the petsc matrices/vectors so that they match the grid points on each node, or do I use AO routines to do that?<br>
> Or do AO routines just map the default petsc partitioning indices to my problem's indices in which case I want to use DM?<br>
><br>
> Thanks<br>
><br>
> Ron Caplan<br>
</p>
</div></div></blockquote></div><br>