Hello Stefan,

thanks for your quick reply!

2012/5/4 Stefan Eilemann <[email protected]>:
> I'm assuming you've got one copy of the SG per node. In that case, you should 
> do the sync() in Node::frameStart().

That makes sense, so I moved the sync() call from the Renderer to
Node::frameStart().

> Is the application, the render clients or both leaking?

There was also a leak inside the application, which I tracked down by now.

> You've got to figure out who is leaking the memory. The delta objects buffer 
> quite some stuff (see [1]), so that might be one cause. However, they should 
> not keep leaking memory over time.

This application leak was the cause for the continuous memory leaking
with every frame.
But the issue of increased memory usage, each time I modify a
scenegraph node still exists.
I lose around 150 to 300 kb of memory each time I conduct a
transformation on the graph, or even just change the name (string) of
a node.

> Have a try with valgrind on a small scene, let it run for some frames with 
> modifications and see if you have hard losses, or if it's simply a matter of 
> data pooling up somewhere.

Unfortunately one requirement for the project was to run on Windows,
so I decided to start development on a Windows VM, as it will be our
target OS on the CAVE.
I tried several other profiling tools (Deleaker, Visual Leak Detector,
Very Sleepy), that are available for the Windows platform, but I
haven't been able
to narrow down how this rather huge amounts of memory are
accumulating. However I noticed that a major fraction of the CPU time
(> 80%) is being spent a kernel32 function WaitForMultipleObjects()
called from co::Global::setObjectBufferSize(). As I did not notice
this behavior with eqPly, I'm assuming this might be part of the
increasing memory footprint issue...(?)

> That's unfortunately correct, and this project would indeed be interesting. 
> What SG are we talking about?

The scenegraph we use was a personal project of the professor
supervising the whole CAVE project. It was mainly developed to provide
an easy to use scenegraph for students starting to work with OpenGL.
However it offers a pretty solid collection of node types, up to the
integration of shaders and FBOs.

Thanks and best regards,
Matteo

_______________________________________________
eq-dev mailing list
[email protected]
http://www.equalizergraphics.com/cgi-bin/mailman/listinfo/eq-dev
http://www.equalizergraphics.com

Reply via email to