CD Projekt Red’s blockbuster title is finally out, but the game is plagued by technical issues, most notably glitches and poor performance optimization. The problems aren’t limited to the GPU, but also extend to the CPU side. One notable complication is with respect to CPU utilization with SMT turned on.
In the above image, you can see how the 5900X fares with SMT turned on, and below with SMT off.
With SMT turned on, the load distribution is rather erratic with roughly half of all the threads being fully utilized while the rest remaining largely idle. With SMT turned off, all the twelve threads are nearly wholly used. The performance scaling is fairly linear up to 10 cores after which it drops, most likely because of a GPU bottleneck.
Strangely, the same behavior can’t be reproduced with Intel’s Core i9-10900K which is a 10-core part. It sees uniform utilization of all twenty threads. It’s unclear what’s causing this. Since the scheduling on Windows 10 is already optimized for the Ryzen 5000 CPUs, I’d say this needs engine-level tweaks. This is likely being caused by the way latency and bandwidth vary across the two threads of a core with SMT turned on.
Due to an MCM design, the AMD chips have a lower memory bandwidth and higher latency than competing Intel parts which further deteriorates with SMT turned on. You can read more about that here.
One clear indicator of this can be seen in the above example. The Core i9-10900K outperforms the 5900X by a notable margin in CBP 2077 with the cache tuned while doing the same on the 5900X doesn’t produce the same level of performance uplift.