yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #11185
[Bug 1041084] Re: memory leak while erasing facets
Yet another example leaking:
e=ForceEngine()
for k in range(1000):
e.ids=range(0,1000000)
While this, of course gives no problem:
ids=[]
for k in range(1000):
ids=range(0,1000000)
It is very annoying because it is a common situation (although
fortunately we assign small things in most cases so the leak is
unnoticed).
It sounds like a broken reference counting.
If so, the solution must be somewhere in Serializable.hpp, maybe _DEF_READWRITE_BY_VALUE?
But I'm still clueless overall.
--
You received this bug notification because you are a member of Yade
developers, which is subscribed to Yade.
https://bugs.launchpad.net/bugs/1041084
Title:
memory leak while erasing facets
Status in Yet Another Dynamic Engine:
New
Bug description:
I detected a memory leak in O.bodies.erase, when facets were erased (spheres are erased without memory leak!).
In the attachment you will find two files, where you can reproduce the bug.
1. Open a terminal with three tabs.
2. Run top or htop in the first terminal tab
3. In the second terminal tab run yade input file "memoryleak-erase-facets.py"
4. Get the pid from first terminal tab (example 31667) and edit "get-memory-info.py"
5. Run "python get-memory-info.py" in the third terminal tab and wait (ca. 5 min) to the end of the calculation.
You will get an output file called "fig-memoryleak-erase-facets.png",
where you can see the effect of the memoryleak.
To manage notifications about this bug go to:
https://bugs.launchpad.net/yade/+bug/1041084/+subscriptions
References