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