[petsc-users] PetscLayout and GetRange

Jed Brown jedbrown at mcs.anl.gov
Tue Jan 15 16:15:35 CST 2013


VecGetOwnershipRange()

You can use VecCreateMPIWithArray() using your own array preallocated to be
as long as you want. If you profile, you'll probably find this is not a
meaningful optimization.


On Tue, Jan 15, 2013 at 4:12 PM, Weston Lowrie <wlowrie at uw.edu> wrote:

> Hi,
>
> I have a problem where I want to grow the size of a Vec (or Mat) many
> times during program execution.  I think for efficiency purposes I would
> just want to allocate a maximum size, and then only use the portion that I
> need.  In the vector case, it is rather simple, just use the beginning of
> the vector, and add values to the end.
>
> This leads to me to the problem of processor ownership ranges.  From a
> previous email I noticed one could use the PetscLayout object and keep
> adjusting it as the useful part of the vector grows.  Does this sound like
> a good approach?
>
> I noticed the PetscLayout is not available in Fortran bindings.  Any
> workarounds for this?  I suppose I can just manually calculate the
> processor ranges?
>
> Thanks for the help,
> Wes
>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20130115/098bef3b/attachment.html>


More information about the petsc-users mailing list