Yes, the matrix is dense. So, you mean that there is no way to evaluate the matrix, exactly? .... I have run the code for smaller size of Ypcq and it's working. But for larger sizes I get the error that I mentioned. On Jan 2, 2012 6:24 PM, "Jed Brown" <jedbrown at mcs.anl.gov> wrote:
> On Mon, Jan 2, 2012 at 17:16, Reza Madankan <rm93 at buffalo.edu> wrote: > >> I am trying to compose a covariance matrix which is of size 72576 x >> 72576, by multiplication of a vector and its transpose, i.e. >> >> MatMatMult(Ypcq,YpcqT,MAT_INITIAL_MATRIX,PETSC_DEFAULT,&InnProd) >> >> where, Ypcq is a vector with 72576 elements and YpcqT is its transpose. >> > > This matrix is dense, right? Would you consider something less than the > full covariance matrix, such as a low rank approximation? > > >> Unfortunately Petsc returns out of memory message while running the code: >> >> >> [0]PETSC ERROR: --------------------- Error Message >> ------------------------------------ >> [0]PETSC ERROR: Out of memory. This could be due to allocating >> [0]PETSC ERROR: too large an object or bleeding by not properly >> [0]PETSC ERROR: destroying unneeded objects. >> [0]PETSC ERROR: Memory allocated 0 Memory used by process 15732801536 >> [0]PETSC ERROR: Try running with -malloc_dump or -malloc_log for info. >> [0]PETSC ERROR: Memory requested 18446744068420534272! >> > > These huge numbers indicate memory corruption somewhere. I suggest running > a smaller problem size under Valgrind. > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120102/1b2ddba0/attachment.htm>
