For much of the 2010s, we were stuck with mainly dual-core and quad-core CPUs in PCs. However the arrival of Ryzen shook the PC industry, causing a rapid increase in core counts. At the time, there was fervent discussion on this matter, with many questioning if more cores were worth it, and how many cores are more than enough?
So how do things stand today? The latest Intel and AMD consumer processors top out at 24 and 16 cores respectively. What extent of modern software can take advantage of all those cores? What modern workloads are still bottlenecked by single threaded performance?
Single thread is far more important these days
In the sense that we take having 6 or 8 cores for granted
Yes, but that’s starting from 6 cores.
Because 2 cores are not enough even if they are Raptor Cove 6 GHz cores.
depends on your usage, for gaming single thread is still king, but for tasks like video editing and 3d rendering, multithreading is crucial. everyone has different needs!
Depends on your workload.
For most of what I do with sound, video and textfiles of various formats, single thread is not very relevant.
Occasionally you may want to convert a long audiobook that comes in a single file and audio is generally single threaded. But that is still only a minor inconvenience because it also converts in the hundreds of real time speed on a single core.
And if it was important enough, then it’s totally possible to write scripts that divide the file in small portions to distribute amongst workers, exactly like it has been done for video conversion where much more compute is needed and this kind of scenario is more realistic.
This is the crux of the issue. People talk about “ST workloads” vs “MT workloads”, but the reality is that single-threaded workloads largely do not matter, it’s all stuff that, at the very worst, is done after a few seconds. MT performance, on the other hand, can save you hours of productivity depending on what your work is.
We are long past the point where ST performance matters for the “snappiness” of systems. Zen 3, Alder Lake, M1 and newer are all more than perfectly “snappy” in any modern system. Gaming is the last use case where ST matters so long as you have a minimum amount of cores, but for professional use cases there’s nothing to even discuss, MT is the only thing that matters.
Good MT performance is contingent on good ST performance. Doesn’t really matter how many threads you have if they’re slow individually. Which will dig a hole faster – 64 toddlers with gardening spades, or one excavator?
Depends on your workload
What about web browsing?
Web browsing RAM speed/size and crypto acceleration makes the biggest impact generally which is why Apple CPUs do so well there. That said web browsing is a pretty broad spectrum as they can run essentially arbitrary code depending on the website.
ANYTHING thats sold as new stock nowadays should do the job MORE than fine.
You would think so, but there are some really bad SoCs out there, using only Arm A5x series cores that have no business rendering a website and will give you an authentic early 2010s mobile web browsing experience.
CAD or at least Solidworks is still really only able to use 1 core
This gets repeated every time, and it’s nonsense. SolidWorks is mostly single-threaded, but it’s also not a demanding application. Even PCs from a decade ago can handle assembling medium complexity models just fine. The few features that are demanding, like rendering and analysis tools like FEA, are in fact multi-threaded.
And if you actually need model assemblies so complex that single-threaded performance in the base app would become a problem, you’d be running a Quadro card anyway, and CPU performance wouldn’t matter.
Source: Industrial designer who worked with SolidWorks, PT Creo and Rhinoceros for a while after uni before transitioning to a different area of design.
Single-core is more important for 99% of normal consumers. Most office productivity apps or web browsers are only lightly threaded.
Also, scaling cores efficiently is hard both in software and in hardware. 10 cores at 1x performance are going to be a lot more efficiently used than 20 cores at 0.5x performance.
First statement is definitely true, second statement is generally true but is super software and implementation dependent. Generally the issue isn’t fast vs slow cores it’s keeping all of those cores fed with data with memory and the OS scheduler handling events that makes a larger difference.
Obviously software makes the biggest difference of all in how many threads it allocates and where. This is an especially difficult issue as optimizing software for a server and for say a gaming PC are totally different problems with different optimal solutions
Gaming still heavily prefers single threaded performance.
People keep saying this, but does it tho? I’ve seen multiple benchmarks where 8 slower cores are faster than 6 high speed cores. I would say cache is more important that single threaded performance in 2023.
Main Threads in games are still limited by single core performance.
Cache improves single threaded performance in gaming though.
Really? Gaming benchmarks for Ryzen 7000 seem to be pretty much flat across the board, with minimal gains upwards from the 6-core 7600. Which games are you thinking of?
That just isn’t true. I don’t know what benchmarks are you watching but you won’t find a single game where Ryzen 7 3700X is faster than Ryzen 5 5600(X).
Same goes for 5800X vs 7600X. On intel’s side it’s harder to compare because higher core count CPUs have more cache.
One thing that gets constantly overlooked in these scenarios is the fact that 8 core CPU’s have more L3 cache than 6 core CPU’s. so if a game uses 6 threads, an 8 core CPU of the same architecture with the same clock speed will potentially perform better than it’s 6 core counterpart.
* only on Intel, which has the L3 made out of slices attached to each P-core or E-core cluster (x4).
AMD segregates its L3 at the CCX level, so every part made from the same die set has the same L3. There’s a bit of a complication with the 12 and 16 core, because if all the threads are working on the same data the L3 is effectively 1-CCD-sized, but if they’re working on different data (like with
make -j
, VMs, or some batch jobs), you get the benefit of both CCD’s worth of L3.That’s only true for intel, who disable part of the L3 along with the cores. AMD however has the full L3 enabled on their 6-cores.
The marketing folks love to add up the L2 cache as well, but since that is not shared cache, each core still has the exact same amount of cache available to it, in spite of having a lower number on the spec sheet.
Main Threads in games are still limited by single core performance.
https://www.techspot.com/review/2537-amd-ryzen-7700x/
7700x bests 7600x quite a bit especially in lows even with a 3090 that was the bottleneck in many benchmarks.
The difference on average across the 12 games was like 5% between the 7700x and 7600x’s 1% lows.
7700x boosts 100Mhz higher than 7600x, and has 2Mbyte more l2 cache.
100 MHz is only 1.9%, and the L2 cache is private per core. Both the 7600X and the 7800X have 2 MiB L2 cache.
The difference on average across the 12 games was like 5% between the 7700x and 7600x’s 1% lows.
-
Average doesn’t matter. If the game I play uses parallelism well, I don’t care about the ones that don’t.
-
The difference in boost clock is only ~2%, so anything more than that is either due to core count or less (soft) thermal throttling from spreading the heat across more die area. And since they tested with a 360mm AIO, it’s probably not soft throttling.
-
And just in case the “experts” here crawls out of their swamp holes with the default excuses from way back when AMD single thread performance was bad, just because a game uses 2-3 cores worth of CPU does not make it not single thread limited. IN the modern proliferation of cores where you get them by the dozens, you are NEVER limited my MP throughput but always by the ST performance on the limiting critical thread.
Gamer checking in. Single core performance is very important as games are not quite yet capable of taking advantage of say 12 cores compared to 6 higher performing cores.
It’s why the 5600x3d performs so closely to the 5800x3d while gaming despite it being a 6 core vs 8 core comparison. We encountered something similar a decade ago with i5 vs i7 for gaming games we’re not capable of taking full advantage of hyperthreading. But as time went on the gap between the two widened.
For gaming, I think cache is more important than single threaded performance, tho. A 5600X3D is faster than a 5800X in gaming, even though the 5600X3D has fewer cores and lower clocks.
A single core benchmark (or any single core workload that doesn’t utilize the cache) will only reflect the clock speed between the two, not the gaming performance.
Cache is not a different thing than single thread performance. Cache is part of single thread performance.
As a gamer what do you think about Intel’s E-cores? I have heard that E-cores are detrimental to gaming performance, with some gamers disabling them or instead opting for AMD CPUs.
It’s very situational, usually the difference is negligible or better (when they’re enabled).
The E cores are termed efficient is because they’re efficient in regards to how much physical space they occupy, not in terms of power/performance.
if you game, disable ecores in bios and forget about them.
Not only are e-cores useless for gaming, they create issues.
As everyone has mentioned most programmes only work on single cores but what people haven’t mentioned it multiple cores allow you to run multiple programmes at the same time without suffering performance issues (from the cpu, memory or disk could bottleneck)
Depends.
Microsoft uses saphire rapids (cpu that got smoked in reviews) couse it has better single core performance for their AI servers. You will find a case for CPU.
For PC depends on your workload. If you are doing normal stuff + gaming just buy this or last gen i5/r5. No need to waste money.
You will have more single and multi thread performance than you need.Depends on what you are doing but I think as a general do it all the 7800X3D is pretty good, good single-core and multi-core performance. If you want to do some productivity is good at that and it’s greaet for gaming on. If you want to do productivity only the Intel i9 is pretty good but the new Threadrippers are even better but if you just want to game the 7800X3D is going to be better for that and it’s really efficient in power.
For gaming: single threaded performance is usually better to prioritize.
For everyday use (web browsers, etc): both, but generally prioritize single threaded performance first. Multithreaded performance is usually already more than good enough on modern chips that have fast single threaded performance.
For heavier workflows: multithreaded performance is usually better to prioritize (particularly on workloads that inherently use a lot of threads). Single threaded performance still matters, but most modern CPUs are good enough on this front.
For gaming: single threaded performance is usually better to prioritize.
For everyday use (web browsers, etc): both, but generally prioritize single threaded performance first. Multithreaded performance is usually already more than good enough on modern chips that have fast single threaded performance.
For heavier workflows: multithreaded performance is usually better to prioritize (particularly on workloads that inherently use a lot of threads). Single threaded performance still matters, but most modern CPUs are good enough on this front.
depends on your specific use case and the software you’re running. for gaming, single-threaded performance is still key, but for tasks like video editing and rendering, multi-threaded performance is crucial. it all comes down to what you need your CPU to do!
depends on your usage, for gaming single thread is still king, but for tasks like video editing and 3d rendering, multithreading is crucial. everyone has different needs!
depends on your specific use case and the software you’re running. for gaming, single-threaded performance is still key, but for tasks like video editing and rendering, multi-threaded performance is crucial. it all comes down to what you need your CPU to do!