Robert, I'm not so sure the multi-threading issue is resolved. I
wasn't getting simple GPU stalls. The database pager would stop
working after several of these stalls. By stop working I don't mean
interruptions with resumption. That database pager would not come back
at all. Also, the log messages to screen was strange. Some were
garbled messages and mentioned that it could no longer find plugins,
etc. The inability to find plugins could explain the database pager,
but the question then becomes why does running background threads dump
plugins and trash log output?

On Dec 14, 2007 5:25 AM, Robert Osfield <[EMAIL PROTECTED]> wrote:
> Hi Sherman,
>
> I have tried out your modified osgtext example with the --mt 5 etc
> option along with a 8GB whole earth database and find the frame rate
> stalling, especially when zooming in to new high res regions.
>
> Running with on screen stats on suggests that its the GPU that is
> stalling things, with a single frame taking a very long time, then
> once its freed up the app runs freely once more with millisceond GPU
> times.
>
> I've put timing code into the UpdateTextOperation and neither the load
> nor update methods take very long most of the time, and there isn't a
> big hit here when the stall happen so it doesn't seem to be directly
> associated with the extra threads running.
>
> I haven't been able to establish the exact cause of stalls, but it
> looks to be an issue with the newly introduced subgraphs forcing
> compile of texture objects/display lists in such a way that the OpenGL
> driver/GPU is stalling.  The texture sizes associated with osgText
> shouldn't be very large so the bandwidth and memory footprint
> shouldn't be a bottleneck, clearly something is happening down in the
> OpenGL fifo/GPU that is causing major problems and stalling things.
>
> One thing it doesn't look like is a threading issue, my guess running
> the UpdateTextOperation synchronously i.e. from the main loop would
> probably see the same big hits on the GPU, although perhaps doing it
> synchronously would regulate the amount of new data added in a
> subgraph per frame. Getting to the bottom of this issue will take
> digging down into draw dispatch, and probably adding things like GPU
> stats collection to the osgText::Text/Font rendering methods as well
> as osg::Texture texture subloading.
>
> I would suggest opening a different thread into investigations of
> these GPU stall issues, as it would seem so far the multi-threaded
> font crashes/bugs look resolved and this thread can be closed.
>
> Robert,
>
>
> On Dec 14, 2007 12:58 AM, sherman wilcox <[EMAIL PROTECTED]> wrote:
> > OK, grabbed the latest copy of OSG out of SVN (latest as of about 2PM
> > today) and ran my test app again. With the latest OSG the app doesn't
> > crash, but there are still major issues. So, the multi-threading issue
> > is still there. The database pager simply stops working, I get all
> > manner of errors in the console window, etc.
> >
> > I've attached the test app. Should compile in linux, windows, etc.
> >
> > If you run this app, you will need a paged database to really stress
> > things. I have one (about 148MB compressed) that I can provide if
> > anyone is interested. Just email me and I'll provide a link to
> > download. Oh, and be sure to pass the app an argument of --mt 5, where
> > 5 is the number of test threads to launch, can be any reasonable
> > number.
> >
> >
> >
> > On Dec 12, 2007 10:21 PM, sherman wilcox <[EMAIL PROTECTED]> wrote:
> > > I spent a bit of time this evening digging up the the code that
> > > reproduces the crash. I'll update to the SVN snapshot of OSG and give
> > > it a try. I was able to reproduce the crash on 2.2.0.
> > >
> > >
> > > On Dec 12, 2007 4:22 AM, Robert Osfield <[EMAIL PROTECTED]> wrote:
> > > > Hi Sherman,
> > > >
> > > > On Dec 11, 2007 11:31 PM, sherman wilcox <[EMAIL PROTECTED]> wrote:
> > > > > I can still reliably reproduce the multithreaded osgText /
> > > > > databasepager crash issue   :)
> > > >
> > > > Could you explain how your recreate the crash, and the circumstances
> > > > of the crash.  It may be exactly the same problem as Serge has, but
> > > > also just as easily could be another weakness that needs solving.
> > > >
> > > > Aaa you gotta love debugging multi-threaded apps remotely :-)
> > > >
> > > > Robert.
> > > >
> > > > _______________________________________________
> > > > osg-users mailing list
> > > > osg-users@lists.openscenegraph.org
> > > > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
> > > >
> > >
> >
> > _______________________________________________
> > osg-users mailing list
> > osg-users@lists.openscenegraph.org
> > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
> >
> >
> _______________________________________________
> osg-users mailing list
> osg-users@lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to