Hi Robert,

We normally run with vsync on, but for these tests we turned it off so we
could observe frame rates greater than 96 FPS.

We ran some sanity tests, with vsync on, CullDrawThreadPerContext threading
and both with and without OSG_SERIALIZE_DRAW_DISPATCH=OFF, but the results
were largely the same.

Our next step will be to try mosaic mode as suggested by both Wojtek and
some folks from Nvidia.  We'll create one big window that covers all four
cards and open 4 viewports on it, one viewport per card, and see what the
performance is.

Thanks,

John

On Fri, 8 Oct 2010, Robert Osfield wrote:

Hi John,

I haven't run with multiple cards for a little while, but when I've
done it in the past I certainly didn't have the scaling problems you
are seeing.  Like Wojtek I'd suspect the OpenGL driver is trying to
serialize the swap buffers even though the OSG is attempting to run
them from separate threads.

As a sanity test try running the app with CullDrawThreadPerContext,
this will only require 5 threads, but since you are getting 150fps
frame rate to begin with not separating Cull and Draw into different
threads shouldn't affect performance too much.  Using less threads on
the OSG side might give the OS and driver a bit more breathing space.

I'd also suggest enabling vysnc to see what the driver makes of it -
this is how you should be deploying your app, and is the way you
should conduct most of work, disabling vysnc is only something I'd
recommend for very specific types of performance profiling.

Robert.
_______________________________________________
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

Reply via email to