One of the big changes AMD’s Ryzen processors brought to the table with their original debut in 2017 was SMT (Simultaneous Multi-Threading), which allows two threads to run on the same Zen processor core at once, doubling the number of logical processors which your operating system can see.
The core counts of Ryzen’s mainstream processors have grown to 16 – a number of processor cores which just a few years ago would have delighted even a data center admin or professional 3D artist. When the first generation of Ryzen was released, Windows and games weren’t as adept at taking advantage of so many threads, and also the complete architecture redesign had meant that some titles did perform better with SMT disabled, something we tested back in the day rather extensively.
So this brings us to the question of how much does SMT actually improve the performance of Zen 3, does it lose any performance when gaming and how do 16 “real” cores compare up against 8 cores and 16 logical threads? You can also watch our video on this here.
To answer this question, we’ll be testing using a Ryzen 9 5950X, and pairing it with a MEG B550 Unify motherboard (thanks MSI) and a Radeon RX 6800 XT graphics card (thanks to AMD for providing us with the card). Check back with us for much more coverage on this hardware in the coming days.
For our testing methodology then, I decided to run both creative and workload based applications and also gaming results too.
For the processor configurations, the Ryzen 9 5950X features 16 cores, with SMT this means 32 threads total. For the benchmarks, I had the processor running with this configuration (16C 32T), disabled SMT (so 16C 16T) and then also disabled 1 CCD, leaving 8 cores and 16 threads.
To do this I used the MEG B550 Unify BIOS, I was able to disable the SMT functionality of the CPU and take advantage of the CCD nature of the Zen 3 design. Each CCD features 8 cores, and the chipset nature of Zen 3 means that you can plonk (technical term) several of these chiplets together to form a larger processor.
The Ryzen 9 5950X features 2 CCDs (again, 8 cores each), so simply by disabling a single CCD, we’re left with the same basic configuration as we would see in a Ryzen 7 5800X (including the same amount of L3 cache too, since the chip’s cache is held on each chiplet).
I also ran the processor with two different clock settings too. The first was a ‘fixed’ 4.2GHZ, by disabling the processor’s own boosting behavior and setting a manual multiplier of 42. This means we get perfect apples to apples comparisons as we compare different configurations with the exact same clock frequency. The second was to leave the processor to boost on its own (with PBO enabled) as a default. To be clear here, I didn’t do anything to raise power limits, undervolt, tweak or otherwise adjust the behavior. I definitely could have had the chip boost to higher speeds using the understood Ryzen 5000 tweaks, but I decided I wanted the behavior to be as stock as possible.
This resulted in the lower core configuration results boosting to higher speeds (because of Ryzen’s boosting behavior) and so, I thought it would be interesting to put both these PBO results in along with the fixed 4.2GHz frequency.
Let’s start out with creative and work-based tasks. To this end, I’ve opted to choose Cinebench R20, the now unfortunately named Corona 1.3, Handbrake, Adobe Premiere, Blender, and FryBench. For applications that leveraged input and output files, these were housed on an XPG Gammix S50 Lite PCI-E Gen 4 SSD (thanks to XPG for the review sample, which we’ll be looking at closer soon).
Our first application is Blender, with the Blender benchmark run, and here is an excellent case to show SMT scaling. The ‘Victor’ part of the benchmark is extremely lengthy, and with all cores and threads, the Zen 3 based Ryzen 9 5950X destroyed the workload in just 6 minutes and 42 seconds. This is damn impressive, but what’s further impressive is that compared to the same workload with SMT disabled, we’re losing about 37 percent of performance.
Interestingly, the scaling difference between 16 ‘real cores’ with no SMT and 8 cores and 16 threads is almost identical (again, about 37 percent). Whereas the render time is cut 50 percent between the 16 Cores 32 Threads vs just 8 Cores and 16 Threads, meaning that with Blender, not only is there a tremendous difference with SMT, but Zen 3 also scales wonderfully here too.
Frybench is perhaps even more interesting, as the application loves threads and cores, with the 8 cores 16 threads (again, at the fixed 4.2GHz) only being 25 percent slower than the ‘real’ 16 cores, SMT disabled. Also, the SMT on results is nuts, with a 50 percent speedup. Frybench is a shorter run compared to many of the other tests, but this is clearly one of the best-case scenarios for Zen’s SMT.
Corona 1.3 provides two meaningful measurements, with both the number of millions of rays being generated a second and also the time the whole thing took (of course, lower is better here). SMT seems no less meaningful with Corona 1.3 in our benchmarks here, with the fixed clock speed showing a 20-second difference between SMT 16 cores and a ‘real’ 16 cores. Again, the Ryzen 9 5950X scales like crazy in our results, demolishing the test in half the time with the full 16 cores and 32 threads, generating an eye-watering 10.5 million rays a second to do so.
Handbrake is an interesting example where the application doesn’t fully hit the processor when there’s all of the threads and cores enabled, hence SMT here with the full 16-cores has a very little impact with our Ryzen 9 5950X benchmark results. Despite this, the 8C and 16T ‘Ryzen 5800X’ we’ve essentially created thanks to disabling a single CCD is definitely behind the 16C 16T results. Again though, CPU usage wasn’t close to being 100%, and we found that our fully enabled chip would regularly be only about 50 – 60 percent tasked. I supposed this does leave plenty of juice left on the table for gaming / other things though!
Adobe Premiere too didn’t always max out the processor, so that in PBO testing the higher clock frequency of lower core counts make the difference, and with more threads and cores active at locked frequencies, well yeah. Remember, here I disabled GPU acceleration and had effects applied to two-game clips with a 50 50 split-screen effect, one clip being 4k high bit rate, the other being 1080P resized to 4K, and then this is exported in a final composite.
Ryzen 5000 – Zen 3 SMT Gaming Tests
The SMT results of gaming when we tested the first generation of Ryzen was pretty interesting, with SMT performance definitely being a bit behind it disabled. But this quickly started to improve as software and OS changes occurred. Also, Zen 3 brings with it several large leaps over the debut Zen architecture, and so I was very interested to see how the situation has changed in games, particularly for more legacy titles such as Rise of the Tomb Raider. Initially, the application had curious behavior on the first generation Ryzen CPUs, though subsequent updates to the game, AMD’s own software, and of course, the Windows OS has improved this behavior.
Starting out with Lara, the Radeon RX 6800 XT offers way more power than any of the Pascal-based cards could muster at the time of release, but despite this, Rise of the Tomb Raider is still rather demanding, with 4K at max settings really pegging the GPU. For lower resolution results though, it’s a kind of mixed bag, with the PBO results offering identical performance with either the 8C 16T or 16C and 32T tests, and with SMT disabled improving performance by a small bit. Locking the clock speed though, showed the 8 core configuration was worse across the board, which was curious.
Batman Arkham Knight was another ultra-demanding game when it launched, and it scaled very well with both CPU and GPU performance. Again, 4K and 1440P, the GPU is the limiting factor here, but when we nudge the resolution to just 1080P, and really and truly, we’re within the margin of error of results here.
Gears 5 is one game I took the resolution to just 720P, as the title is ultra GPU demanding. Unsurprisingly, anything more than 1440P was a write off between the results, and could easily be explained with the normal churn of GPU boost behavior. 1080P and 720P results don’t really change anything though, with the results being very close, though the 16C 16T result did come out on top, but… barely.
Far Cry New Dawn and Borderlands 3 were almost identical stories to one another, there’s practically no benefit to SMT on or off (since the CPU simply isn’t having anywhere close to all of its threads saturated), but there’s not any negative to disabling SMT either.
I could copy and paste this same statement for both Assassins Creed Valhalla and Horizon Zero Dawn too. Again, this is totally within the margin of error for the results, and isn’t going to make any difference on performance benchmarks.
Given Zen used to perform mediocre on CSGO, I was curious how SMT would affect things here given I know it’s still very popular. I opted to leave the settings on default high, which I know isn’t competitive settings, but I figured would represent what the ‘average’ person would play. At 1440P you can see the FPS difference from all different configurations is within the margin of error, I recorded a two and a half minute demo so that the results are easily repeatable.
Finally, COD. Take what I’ve said throughout this article about the Ryzen 9 5950X and Zen 3 SMT performance and change the words as appropriate to Call of Duty and there’s your answer
CONCLUSIONS
Well, it was a lot to get through here, but the reality of the situation is that with SMT enabled, there’s no loss in performance, aside from a few frames here or there in older games. Indeed, something to remember – our testing here is a pretty bare-bones Windows 10 install. Aside from game clients such as Steam, the system had nothing running in the background (which is of course, how benchmarking should be done).
This would likely mean that even if an app does give you a tiny boost in performance with SMT disabled, the benefits of having more threads to handle background tasks (such as a game client updating, or whatever) rather than eating into your game performance, and I suspect this would be even truer if you’re running a lower core Ryzen processor.
So, toggling SMT could be useful in fringe applications or testing, but for 99.9 percent of usage cases, I would just leave it enabled and enjoy the performance!