Lawrence,

So I was running large transient VI simulations and was noticing that each time level was getting slower and slower. I knew the equations were getting harder to solve but wasn't sure if it was also because of a memory leak. Turns out it was mostly the former, although at the time it was actually a combination of both because I noticed that the memory consumption per Ubuntu activity monitor was increasing. I wasn't efficiently implementing some python and UFL functions

As of now I don't think I am experiencing anything, so this was more of a hypothetical situation in case it happens again.

Justin

On Thu, Dec 1, 2016 at 4:14 AM Lawrence Mitchell <lawrence.mitchell@imperial.ac.uk> wrote:
Hi Justin,

On 30/11/16 20:11, Justin Chang wrote:
> Hi all,
>
> What's the best way or tool to detect for potential memory leaks for
> Firedrake? Normally I use the PETSc log functions but in my Firedrake
> code I am doing lots of extra curricular programming which isn't seen
> by PETSc.

"It's difficult"

You can, in the normal way, use valgrind.  But you have to build a
custom Python install so that valgrind doesn't report lots of false
positives.

Normally, python objects will just be garbage-collected in the normal
way.  The worry is if you "accidentally" keep around references to
them in various places.  I think at the moment we're not doing so in
firedrake itself, but maybe we've broken something again.

Are you experiencing memory leaks, or is this more "idle" curiosity?

Lawrence

_______________________________________________
firedrake mailing list
firedrake@imperial.ac.uk
https://mailman.ic.ac.uk/mailman/listinfo/firedrake