[petsc-users] Matrix stored on many machines, filled by one process

Jed Brown jed at 59A2.org
Thu May 19 04:28:56 CDT 2011


On Thu, May 19, 2011 at 11:09, Bartłomiej W <bartlomiej.wach at yahoo.pl>wrote:

> [0]Total space allocated 2514,564,304 bytes
> (...)
> [0]PETSC ERROR: Memory allocated -2147483648 Memory used by process
> 1848942592
> [0]PETSC ERROR: Memory requested 1578,397,300!


Please always send the whole error trace. I have updated petsc-dev so the
sizes are not incorrectly truncated like you see here. Are you sure you have
built a 64-bit executable (run "file your-executable")?


>
>
> Caused by the code
>
>   ierr = MatCreate(PETSC_COMM_WORLD,&Dinv);CHKERRQ(ierr);
>   ierr = MatSetSizes(Dinv,PETSC_DECIDE,PETSC_DECIDE,n,n);CHKERRQ(ierr);
>   ierr = MatSetFromOptions(Dinv);CHKERRQ(ierr);
>   ierr = MatAssemblyBegin(Dinv,MAT_FINAL_ASSEMBLY);CHKERRQ(ierr);


Is this in parallel? How many processors? Does the name "Dinv" imply that
this matrix is supposed to be the inverse of something? Why are you
assembling without putting anything in the matrix?


>
> where n = 39459925


How many nonzeros per row?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20110519/25652a6d/attachment.htm>


More information about the petsc-users mailing list