[petsc-users] Memory Accumulation

Zhenglun (Alan) Wei zhenglun.wei at gmail.com
Thu Aug 30 18:19:13 CDT 2012

Thanks Barry. It helps a lot.

On 8/30/2012 6:18 PM, Barry Smith wrote:
> On Aug 30, 2012, at 6:08 PM, "Zhenglun (Alan) Wei" <zhenglun.wei at gmail.com> wrote:
>> Dear All,
>>     I hope you're having a nice day.
>>     I coded my program based on the /src/ksp/ksp/example/tutorial/ex45.c. However, I met a problem that the memory is accumulating while the program is running. I have a doubt on the DMDAVecGetArray(da, b, &bb) and DMDAVecRestoreArray(da,b,&bb). Does the former one allocate any memory for 'bb'? If so, does the later one free the memory allocated for the 'bb'?
>      You must match each  DMDAVecGetArray with a DMDAVecRestoreArray() or you may bleed memory
>>     BTW, I just installed the Valgrind. Is there any useful commands in Valgrind can monitor the memory of all the arrays in my program in real time so that I can detect which array keeps requesting the memory?
>      It is easy to simply using -malloc -malloc_debug -malloc_dump to see all the memory that was allocated and not freed.
>     Barry
>> thanks,
>> Alan

More information about the petsc-users mailing list