spring: develop 2635f8cd | [ Diff ] [ Back to Repository ] | |||
Author | Committer | Branch | Timestamp | Parent |
---|---|---|---|---|
jK | jK | develop | 2015-10-13 20:33:35 | develop ca3e86be |
Changeset | LosHandler: speedup + threading A few numbers of a 1min 400 fighter testcase: time spend in LosHandler: 20sec (before this commit) -> 15sec (singlethreaded) -> 8sec (threaded with a quadcore) What has been done: * decouple unit update from LosInstance update * optimize LosInstance update (when an instance is removed from an unit and added to another in the same gameframe, then the losmap doesn't need to get updated, etc.) * increased cache again * use boost::unordered_multimap instead of custom hash array * Run Length Enode `squares` map of SLosInstance to reduce memory consumption a lot * threaded LosTypes updating (Radar, LoS, AirLoS, ... are updated in parallel) * threaded terrain raycasting |
|||
mod - rts/Sim/Misc/LosHandler.cpp | [ Diff ] [ File ] | |||
mod - rts/Sim/Misc/LosHandler.h | [ Diff ] [ File ] | |||
mod - rts/Sim/Misc/LosMap.cpp | [ Diff ] [ File ] | |||
mod - rts/Sim/Misc/LosMap.h | [ Diff ] [ File ] | |||
mod - rts/System/Threading/SpringMutex.h | [ Diff ] [ File ] |