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

Reply via email to