Hey, I'm Dave, Welcome to my shop!
I'm Dave Plummer, a retired software engineer going back to the MS-DOS and Windows 95 days,
and today, we're diving deep into the performance of the new 5950X, which serves as the basis
for a new Windows and Linux PC for my own little oval office.
It's the current King of the Hill and we'll be drag racing it against a Threadripper 3970X,
core for core, to see just how fast they actually are.
I'll tell you right now that the old King still beats the new King even in some single
core cases.
We'll take a look at what those are, how I discovered them, and what they mean, all right
now in Dave's Garage.
[Intro] Before we get underway I'd like to ask you
take a moment to subscribe to the channel if you have not done so already.
Subscribing is just a vote of confidence in the channel, and a little burst of dopamine
for me.
And don't forget to stop by the merchandise store to grab a fancy Dave's Garage mug, with
all profits going to Autism research.
And now, back to the story of the 5950X.
My house has an oval office, and in that oval office is an oval desk, and in that oval desk
is what used to be my main PC before I started working out here in the shop so much.
I built this machine about 8 years ago, way back in 2013, and it's organized around an
i7-4770K.
It even has what was an astounding amount of memory for the time at 32G.
I don't use that computer as often as I used to, but one day when I did need it, I found
that it wouldn't turn on anymore.
Other than the various LEDs, the system was completely dead.
I didn't think it was worth troubleshooting an 8-year-old motherboard, so I decided to
treat myself by upgrading.
The problem is that the CPU I would want, the current King of the Streets, is the AMD
5950X.
And the 5950X is still, as of today at least, very hard to get.
If and when you do find one available for sale, odds are it will be at some outrageously
inflated second sticker price, and I didn't want to get caught up in some wave of irrational
exuberance while building the PC.
Since this is something of a secondary desktop for me right now, I decided to bide my time
and wait it out until the CPU would come around to me.
It turns out I didn't have to wait too long.
A fellow I had worked with way back in the Windows NT days was also searching for a 5950X,
but he was doing it much more aggressively, even trying to score one through the NewEgg
lottery system.
Eager to get one, he ordered from multiple sources, and as is almost guaranteed to happen
when you do so, multiple CPUs showed up!
Which vendors they ultimately came from I've forgotten as this isn't a sponsored video,
but having two in hand meant he had an extra, and I was eager to snap up the opportunity
for the spare CPU at MSRP.
I quickly did so, thanked him, and then set out to buy the rest of the components I would
need.
This was a fairly simple build to spec out because right now there are some clear performance
winners and so you don't have to agonize over which components to select.
To wit, the 5950X is the fastest single core CPU that can run Intel code, and so to complement
it, I went with the fastest SSD that I was able to source: the Samsung 980 Pro, which
will do some 7 gigabytes per second.
I stepped up 64G of G.Skill RAM rated at 3600 MHz.
And finally, I needed a robust motherboard to tie it all together.
For a decade or more I've been something of an ASUS snob when it came to motherboards.
After all, they're both Heart Touching and Rock Solid, at least according to their slogan.
This was not from any particular loyalty to or affinity with that brand so much as the
fact that they just seemed to have the slightly higher end boards that offered the features
I was looking for.
This year, however, everything I've built has been based on Gigabyte Aorus boards.
That's primarily because some of my main criteria are that it have 10 gig networking onboard
and lots of slots free.
I'd had fairly good luck with and I'd been impressed with the quality of the Gigabyte
Aorus Extreme on my TRX40 build, and so that's the way I went again.
The current chipset you need for a 5950X is the x570 and so the board I ultimately selected
was the Gigabyte Aorus x570 Extreme.
In addition to the 10 gigabit NIC that I mentioned it has serious overkill on the power VRMs,
a great audio system, and three PCI4 M2 slots with good thermal packaging.
This thing is built like a tank.
It's not cheap at $700 but it's one of those rare expensive products where at least it's
pretty clear where your money went.
They didn't cut many corners.
With all the parts in hand I swapped everything over into the case, put the SSDs into the
mainboard, and got ready to start it up.
When I was done building, I double and triple-checked everything, and it all looked good, so I plugged
in the power cord and threw the switch.
Nothing.
Well, not nothing exactly, but nothing other than the fan LEDs lit up.
Just like the old i7 machine I was replacing!
Hmmm...
So, I ran it by my wife and you know what she said?
She said it was probably the power supply, and likely had been all along.
It turns out she was right, and I guess it turns out I didn't really need all these fancy
new components, I probably just needed a power supply.
Oh well, live and learn.
They're here now, so let's have a quick look at the results of the build with a little
montage I made.
I haven't been able to find a nice braided cable kit for the Gigabyte power supply, so
if you know of one, please shout it out it the comments.
As you're watching this montage there's a progress bar that will tick down on the left
hand side and you can use the channel advance if you get bored, but it's less than a minute,
so I hope you enjoy!
[Motherboard Segment] When everything was done and ready, I plugged
it in to do some benchmarking.
With that many das blinkenlights, it better be fast.
And I was not disappointed.
My first quick smoke test is usually to run CPU-Z and tab over to the Benchmarking page.
It contains a simple little test of CPU performance.
Here's a quick example of CPU-Z running on the 3970X on the left and the 5950X on the
right.
The 3070 scores 500 in single core and 20000 in multicore.
That means it's 32 cores plus hyperthreading achieve the equivalent of 40 cores.
That surprised me!
As you can see, the 5950X has the better single core score by about 30%.
At 11800 the multicore score is about 50 percent of what we see with the 3970.
CPU-Z can generate charts to show your performance relative to reference standards.
The next fastest chip on their chart is the 10900K, and it's a solid 10% slower on every
core and only features 10 cores versus our 16.
We can see that the 3950X scores 524, and that's also about where the 3970 scores as
well.
From there we can turn out attention to the multicore results.
The most direct competitor is the 3950X, the older generation of 16 core chip.
Chip for chip, the 5950X is about 8% faster than the outgoing generation under maximum
workload.
For comparison, the 3970X scores 21000, a solid 45% improvement from 50% more cores.
With those quick tests out of the way we know things are working fundamentally correctly
and we can turn our attention to some more advanced benchmarking.
One test that I've come to rely on is called Geekbench.
For reasons that confuse and anger me, the Linux version is slightly faster than the
Windows version, so that's what I'm going to run.
Now I don't mean I'm going to boot into text mode Ubuntu.
I'm not a savage, I run most of my Linux under WSL2.
And it's still faster than the Windows subsystem, and its perf numbers are dead to nuts accurate
against the 5950X leaderboards at the Geekbench website.
I installed Ubuntu 20.04 LTS on the 3970X but couldn't get it to run to completion.
It would also blow up with either out of memory or an I/O in the late states of the multicore
tests, and I wasn't able to solve it in time for this episode.
However, if you compare the WSL2 numbers to other people's bare metal numbers on Geekbench,
you see that I'm actually slightly faster than average for the 3970X under Linux.
Whatever performance penalty there may be appears to be very tiny.
Let's have a look at the 3970X Geekbench run - the 5950X looks similar, of course, except
for the scores, so I won't repeat it here.
[Geekbench Segment] To run the benchmark you've got to download
the archive from the geekbench website.
Then to unpack it all I did was gunzip and then tar xvf into a folder.
That produces a standard x86 linux binary called geekbench_x86_64 that you can execute
to run the benchmark.
In the system information you can see that this chip has 32 cores, 64 threads, a base
clock of 3.7 GHz, and tons of cache memory, which will be important later on.
It has 32K of L1 cache, 512K of L2 cache, and 128M of L3 cache.
The geekbench benchmark runs all of its tests twice, once on a single core only and then
again across all cores.
Although I'm curious how the 5950X will do, I'm confident that with twice as many cores,
the 3970X will handily best it in multicore performance.
But it's the single core speed that I'm curious about.
It's supposed to have come a long way with this new generation of chip, and a more advanced
workload might show even more improvement than the CPU-Z test did.
I'll fast forward through the benchmarks so we can get to the results at the end.
As I do, you'll see it doing things such as text and image compression, web work, compiler
tests, physics, image, and graphics tests, and even HDR, ray tracing, and machine learning,
so it's a pretty cool mix of tests.
When it's done both single and multicore variant testing, it produces the results.
The multicore score on the 3970X jumped from 23000 to 27000 under WSL2, which blew me away,
so I ran it again to verify.
The single core speed of the 3970X saw a best of 1368.
The 5950X produced a best of 1781.
That's even higher than the 1732 we saw with the M1, the previous King of the Street when
it came to Geekbench racing.
For multicore, even though the 5950 has only half the cores of the 3970, it turned in 60%
of the perf of the 3970 with a best 16494 versus the latter's 27211.
If I remember correctly, that's the same performance ratio we got from the CPU-Z test.
Now I don't want to get too far afield into the primes project, as folks like Rolf and
Rutger and Tudor have worked hard enough on it that it deserves the focus of at least
a dedicated episode or two!
Still, I wanted to run my beloved sieve on the new chip and see how much faster it was,
core for core, than the old Threadripper.
What happened next confused the heck out of me.
Core for core, even on a single core at once, the old 3970X Threadripper was still faster
than the blazing new 5950X.
Even though all the benchmarks pegged the new chip as at least 10% faster on each core,
for this one real world problem of finding primes, it just wasn't true.
The new chip was actually 5 to 6 percent slower!
One of the reasons it's been longer between videos is that I sort of ratholed for the
better part of a week trying to sort this out.
The most likely theory came from a fellow named Oliver online, and that was that the
Threadripper has twice the cache memory that the 5950 does.
That makes a huge difference, since the prime sieve is primarily memory based and therefore
very sensitive to cache misses.
I ran a ton of tests all designed to vary the size of the sieve and see what the correlation
to performance was.
I tried varying the number of threads, then a single thread, and then 16 threads per chip,
and so on.
I documented everything in an excel spreadsheet and then started graphing things.
What I found confirmed the theory: the new chip is faster for small sieves and the old
chip, with its much bigger cache, is more adept at handling the bigger sieves.
The inflection point seems to be a cache size of around 500 million.
That's where the 3970X takes over.
These margins are small of course, about 5 percent at most, but if I'm going to explain
away why the new chip should be expected to be slower in some cases, I figured I should
at least back that up with a theory and some data!
So there you have it - the 5950X is up to 10% faster core for core in mixed benchmarks,
and up to 5% slower when it comes to some specific very large memory model tasks.
In day-to-day use, however, there's no denying that you can feel the improvement in single
core performance in those mixed workloads.
It's an incredibly snappy system.
Thanks for joining me out here in the shop today!
If you've enjoyed this episode at all, please take a moment to subscribe to the channel,
if you would.
And if there's somewhere appropriate that you could share this video, please do so!
If you found it interesting, odds are folks you know might as well, so a share from someone
such as yourself who liked it is really valuable, and I'd appreciate it accordingly!
In the meantime, and in between time, I hope to see you next time, right here in Dave's
Garage.