[osg-users] Rendering to multiple graphics cards

Robert Osfield robert.osfield at gmail.com
Tue Jul 1 02:28:08 PDT 2008


Hi Bob,

Last summer when testing multiple GPU rendering I found that if I
forced the serialization of the draw dispatch I actually got better
performance.  This suggest a performance problem in the driver, or it
could also have been a hardware contention.  Either way even on my
quad core, dual GPU machine serializing draw dispatch was a winner -
against what I would have expected for a properly balanced system.

I did call for testing of draw serialization from the community, but
alas got 0 feedback on this issue, so had to go with the only data
point that I had - my own experience with my system, and choice the
default to serialize the draw.  This option is configurable via the
osg::DisplaySetting classes setSerializeDrawDispatch method, or its
default setting via the env var OSG_SERIALIZE_DRAW_DISPATCH, if you
set this env var to OFF, then it'll allow the draw dispatch to run
multi-threaded.

For your tests it's unlikely to make too much difference as draw
dispatch for a textured cube will be far less than 1ms, so even doing
for draw traversals in series won't be something that breaks frame.

I'll do some more testing today to see if things have changed in the
last year, feedback on other system would be really really useful.

Robert.



More information about the osg-users mailing list