[petsc-users] Slepc Matrix memory preallocation

Jed Brown jedbrown at mcs.anl.gov
Thu Jul 12 17:18:54 CDT 2012


On Thu, Jul 12, 2012 at 4:14 PM, Michael R Nowak <nowakmr at umich.edu> wrote:

> I'm setting up a matrix with Slepc, and manually setting the preallocation
> for nonzero entries row-by-row using the MatMPISBAIJSetPreallocation
> function as follows:
>
> MatMPISBAIJSetPreallocation(LaplaceOperator,
>                             1,
>                             0,
>                             nonzeroEntries,
>                             0,
>                             PETSC_NULL);
>
> The problem with this is that the number of nonzero entries per row that I
> give Slepc is not the same as the number of nonzero entries that Slepc
> allocates space for, slepc always seems to allocate N more nonzeroes than
> needed,
>

What do you mean by SLEPc allocating nonzeros?


> with N being the number of rows in the matrix. This is a problem
> for me, since I would like to reduce the number of unneeded nonzero entries
> to exactly zero, in order to save memory. The number of nonzero entries
> that I give in nonzeroEntries is exactly what is used, so why are extra
> nonzeroes being allocated? Any help with this would be much appreciated.
>

What evidence do you have that this is happening?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120712/30b7f884/attachment.html>


More information about the petsc-users mailing list