That would be ideal, but may be impractical... is it possible to redo the distribution after the matrix is assembled? How would I go about doing that? On May 15, 2012 12:38 PM, "Shri" <abhyshr at mcs.anl.gov> wrote:
> By default, PETSc uses a row distribution with the first m rows on > processor 0, next m rows on processor 1, and so on. > If the order is not important, then you could remove rows/columns from > each processor instead of removing the last n-m rows on the last processor. > Thus, the load balance would still be even. > > Shri > > ------------------------------ > > I'm solving the schrodinger equation in a basis state method and looking > at adding the azimuthal quantum numbers (the m's) to my basis so I can look > at circularly polarized light. > > However, when I do this, I'll need to do some sort of convergence study to > make sure I add enough of them. The way my code is structured, it will > probably be easier to just remove rows and columns from a bigger matrix, > instead of adding them to a smaller matrix. However, depending on the way > I structure the matrix, I could end up removing all the values (or a > significant portion of them) from a processor when I do that. > > Speaking more on that, is the "PETSC_DECIDE" way of finding the local > distribution smart in any way? or does it just assume an even distribution > of values? (I assume that it assumes a even distribution of values before > the assembly, but does it redistribute during assembly?) > > Thanks, > > -Andrew > > On May 15, 2012, at 6:40 AM, Jed Brown wrote: > > On Mon, May 14, 2012 at 10:39 PM, Andrew Spott <andrew.spott at > gmail.com>wrote: > >> That is what I figure. >> >> I'm curious though if you need to manually determine the local row >> distribution after you do that. (for example, say you completely remove >> all the values from the local range of one processor? that processor >> wouldn't be utilized unless you redistribute the matrix) >> > > What sizes and method are we talking about? Usually additional (compact) > basis functions only make sense to add to one of a small number of > processes. > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120515/2455201f/attachment.htm>
