]> git.mxchange.org Git - simgear.git/commit
Bernie Bright:
authorcurt <curt>
Fri, 23 Aug 2002 17:52:10 +0000 (17:52 +0000)
committercurt <curt>
Fri, 23 Aug 2002 17:52:10 +0000 (17:52 +0000)
commitb75a694682dfe4bca99b9a4049ecfa87462c45d9
tree46c07bc6bb592377763a8d38a63e1243a018d2b5
parent2e7e9b73a0e7c1a00c43a80d318dd40a45108491
Bernie Bright:

Here are some changes that gave me a significant frame rate increase of about 10 fps with random objects disabled.  The interesting thing is that these changes aren't in the main loop but are in tile loader.  My guess is that I've reduced the memory footprint just enough to reduce CPU cache misses, though I have no hard evidence of this.

Initially I modified all SGBinObject member functions to pass/return by reference instead of by-value.  This gives little or no speed up but allows for some optimizations in fgBinObjLoad().  It is these changes that reduce the number of memory allocations.  Needless copying of vectors, and vectors of vectors, can be very memory intensive, especially if they are large.

Anyway I would be interested to see if you get similar results.  I would emphasize that the frame rate increase only occurs with random objects disabled.  I lose about 10-15 fps on my GF2MX 32MB with random objects, probably a fill-rate limitation or texture memory thing.
simgear/io/sg_binobj.cxx
simgear/io/sg_binobj.hxx