In my sketch ups for an OpenSceneGraph-2.0 minimizing data structure size and optimizing ordering have been something to strive for right from the start. Performance with complex scene graph are heavily dominated by cache missing, memory latency and bandwidth, these issue remains totally outweigh FPU performance etc.
Just because I've been thinking about these optimization of data structure for an OpenSceneGraph-2.0 doesn't mean we can't steadily improve on the existing code base though :-)
It would be very useful to have a data structure analysis tool to gleen info about the packing of data, even better what data is accessed most often, with such analysis you'd have a good chance at improving the later to avoid cache missing, and reduce overall memory bandwidth demands.
Without this tool, one would have to do things by hand and do things by trail and error
One thing to consider too is the use of base classes, which provide use with generic functionality, they also might be bloating the data structure such that the program flow will make requests over quite a disperse range of memory to get all it needs. OO programming style encourages this where appropriate, but it may be one of the things that puts a spanner in the works w.r.t data structures optimized for performance.
Does anybody have recommendation w.r.t anlysis tools? Perhaps we might be able to write some ourselves.
Robert.
_______________________________________________ osg-users mailing list [email protected] http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
