Performance and benchmarks

To try to settle the question of how many threads the game can use, I have just run a load of tests with different affinities. If you set the affinity of the Steam process before running the game up, the game will have the same affinity that you set for Steam.

Explanation of the affinities:
1 - 1 thread of 1 core
11 - 2 threads, both on the same core
101 - 2 threads on two different cores
111 - 3 threads, 2 of which are on the same core
etc

Hopefully these results make it clear that the game can use more than two threads, indeed it even performs a little better when allowed to use all 12 threads compared to being limited to 6 threads on 3 cores. As expected, 101 is much better than 11, i.e. if it can only use 2 threads, it’s much better for them to be on two different cores. 1111 actually performed worse than 111. The game clearly has mechanisms where it can split activities across more cores, but this can in some circumstances make it perform worse if the overhead of splitting the work exceeds the benefit. It will also depend on what activities end up on threads that are on the same core. My suspicion is that some of the score variation that people see between different runs of the benchmark could be eliminated if the game avoided using multiple threads on the same core.

Note that I’m not saying the game will always work in this way. The fact it worked this way in these tests shows it is capable of working this way, but doesn’t show that it will always work this way. Without access to the source code, we can’t know what algorithms it has to choose how to divide work across threads and cores. So if it works differently on your PC, it doesn’t show that’s the way the game always works, you’ve just observed a different one of the multiple ways it can work.

As an example, there were major problems with the 5x00X CPUs and Warzone working badly on them unless a config file was changed to set a different affinity. The game was defaulting to different affinities for AMD and Intel CPUs.

3 Likes