Now I replayed it and took the profile. Let's take a look. The replay was took on Windows 8.1, Core i3 1.8GHz, RAM 4GB. X axis plots 1 / 20 number of turns and Y axis plots milliseconds per frame. In ideal situation, one turn equals 200ms in single play and one frame equals 16.7ms at 60 Hz frame rate. Thus 34:50(2090sec) should be Turn 8320, which equals 416 in X axis. The total never exceeded 200 ms, but this is a replay so it doesn't include any graphics at all. On my machine, the total almost always exceeds 16.7ms, means I can't expect 60 FPS anytime. At 416, I can't find any prominent peaks. I guess there were temporal lags before 34:50 so actual 34:50 was somewhat earlier. At 379, FindEconomicCCLocation stands up to 97.98ms and ComputePath makes plateau from 384 to 392. From these heavy load the total constantly exceeds 100ms so I conclude 34:50 was around 379. Maybe total simulation update should not exceed 100ms per turn. http://trac.wildfiregames.com/wiki/EngineProfiling maleg's_profile.txt