1333 cycles (default):
Name: 1333.png Views: 886 Size: 35.2 KB
At the default value, the pathfinding is horrible. At any given moment the majority of units are not in motion and are waiting for an updated path. Here it is clear why I was saying issue #2 is the major issue. The units towards the back of the group, where most of the bumping occurs, perform ridiculously poorly. Even though at the 60 second mark the group appears to be moving decently well, that's just due to the luck of the units at the front not bumping into each other as much. At the 3 minute mark a large chunk of units is still at the starting point and it takes a whopping 10 minutes to finish and there are still a few stragglers that still haven't made it yet.
5332 cycles (4x default):
Name: 5332.png Views: 902 Size: 35.1 KB
At 5332 cycles there is a massive increase in performance, but still far from adequate. There are still plenty of stationary units at any given time. However as you can see, the group is generally moving much more smoothly and finishes the race over twice as fast as they did at the default value.
13330 cycles (10x default):
Name: 13330.png Views: 890 Size: 29.3 KB
At 13330 cycles there is another huge improvement, though a little less than before. Most units are now in motion at any given time though there's still room to improve. The group finishes the race almost twice as fast as the last attempt.
39990 cycles (30x default):
Name: 39990.png Views: 891 Size: 29.2 KB
At 39990 cycles we've basically reached an optimum point. No unit ever has a downtime of more than 1 or 2 seconds and the group moves very smoothly, with no unit ever colliding with anything other than another moving unit. The group finishes just over a whole minute faster than the last group.
66650 cycles (50x default):
Name: 66650.png Views: 914 Size: 29.0 KB
At 66650 cycles we can see that pathfinding improvements at this scale, with 1500 moving units, have basically plateaued. The group basically finishes at the same amount of time as before, with the 5 second difference falling within the margin of error for me deciding when the group at "arrived". However, as explained above, for more complex operations than simply moving a group from one point to another (like how you would see in a real game with many different orders being given to different groups of units) there are some small improvements to pathfinding update time and the hardware hit is still small compared to the rendering workload, so I think that 66650 is a much better optimal value to use due to the breathing room it affords.
So 66650 cycles is the value we will use for TA Zero and is probably a good optimal value for most people. The 5332 value is definitely too low. Finally, while you can go even higher, there is not too much benefit and you may end up just wasting resources and causing unnecessary slowdowns, even when there are few units in-game.