Hi Max,

I review the code of the txp loader just now and I might have a hint.
Internally as you might already know it uses the paging manager of the
trpage library. I see You understand the internals well. The paging Manager
from trpage is updating the scene graph based on the eye position, and then
internally is managed by PagedLOD. Try commenting the removeChild
(TXPNode.cpp Ln 345 in UpdateSceneGraph method) and let the DatabasePager
remove the child. This is by fast look on the code, but I think worth of
try. Give it a shot

Nick


On Fri, Jun 6, 2014 at 7:46 PM, Max Bandazian <[email protected]> wrote:

> Thanks for the background. After playing with it some more, I'm still
> seeing leaks, and I think some more extensive changes will be needed to fix
> them (though I'm not sure what the best way to do it is). The main problem
> is that the TXPNode tests all of its tiles against the current eyepoint
> every time it's traversed and throws out tiles based on that, so with two
> views far away from each other it's throwing out and reloading the entire
> tile set every frame. I think it needs to be modified to use an expiration
> scheme like the DatabasePager does for its toplevel tiles, so that tiles in
> view of one eyepoint but not the other get marked and not thrown out.
>
> It's also leaking half the tiles every frame while this is going on, which
> I don't know the cause of yet. I wasn't seeing the problem before after
> removing the RetestCallback because I had my target paged LOD number set
> very high, but it does still leak (a lot) with a smaller paged LOD target
> (I'm testing with 100 now).
>
> Anyway, if I get it fixed up I'll certainly submit it.
>
> Thanks,
> Max
>
>
> On Fri, Jun 6, 2014 at 3:53 AM, Robert Osfield <[email protected]>
> wrote:
>
>> Hi Max,
>>
>> As Nick has given the green light to removing it could you post the
>> modified file to osg-submissions so I can review and merge it.
>>
>> Cheers,
>> Robert.
>>
>> On 5 June 2014 19:38, Max Bandazian <[email protected]> wrote:
>> > I'm getting a large memory leak when viewing a TerraPage file from
>> multiple
>> > viewpoints, and the cause appears to be the RetestCallback removing
>> nodes
>> > out from under the DatabasePager. Does anyone know what the purpose of
>> that
>> > thing is? It looks like it's supposed to time out tiles, but the regular
>> > pager should also be doing that. If I remove it, everything seems to
>> work.
>> >
>> > Thanks,
>> > Max Bandazian
>> >
>> > _______________________________________________
>> > osg-users mailing list
>> > [email protected]
>> >
>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>> >
>> _______________________________________________
>> osg-users mailing list
>> [email protected]
>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>>
>
>
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
>


-- 
trajce nikolov nick
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to