Memory allocated by PETSC?

Satish Balay balay at mcs.anl.gov
Wed Feb 28 16:51:38 CST 2007


> Maximum memory PetscMalloc()ed 29246912 maximum size of entire process 0

The choice of wording here is a bit misleading. PETSc is using
getrusage(ru_maxrss) - which is resident set size. [so top should show
similar numbers got RSS]

This might include both code segment and data segments - and the code
segment part could be a few MB - perhaps up to 10 MB]

0: [0] 10 15321472 MatSeqAIJSetPreallocation_SeqAIJ()

This indicates that the matrix is taking approximately 15MB. And there
are other datastructures that are taking about another couple of MB
space.

Depending upon how the malloc()/free() is implemented in the OS - some
of the freed memory might not immediately reflect on th RSS count.

Hope this helps..
Satish

On Wed, 28 Feb 2007, Shi Jin wrote:

> Hi, 
> I am curious how much extra memory PETSc allocates in
> the background. Since my estimate of memory usage of
> the code is much smaller than what I see when it runs.
> So I did this simple test:
> First I used PETSc to dump a matrix in binary format
> into a file. The file has a size of 13MB. I assume
> this should be the same size that is used to store the
> matrix in memory. Then I wrote a simple code that does
> nothing but to load this matrix from the file by
> MatLoad(). However, I found that the code consumes
> 29MB of memory (VIRT=29M from top) using single
> process. 
> This is confirmed by the -malloc_log option where it
> says
>  Maximum memory PetscMalloc()ed 29246912 maximum size
> of entire process 0
> I've attached the output of the code with detailed
> malloc information.
> Could you please explain to me about the  difference
> of  over two time?
> I don't want to criticize anything but need an clear
> idea of how much memory is needed so that I know
> whether there is a chance for me to reduce the memory
> usage of my production code.
> Thank you very much.
> 
> Shi
> 
> 
>  
> ____________________________________________________________________________________
> Need a quick answer? Get one in minutes from people who know.
> Ask your question on www.Answers.yahoo.com




More information about the petsc-users mailing list