You're misguided.
Apple has excellent Notebook CPUs. Apple has great IPC. But AMD and Intel have easily faster CPUs.
https://opendata.blender.org/benchmarks/query/?compute_type=...
Blender Benchmark
AMD Ryzen 9 7950X (16 core) 560.8
Apple M2 Ultra (24 cores) 501.82
Apple M3 Max (12 cores) 408.27
Apple M3 Pro 226.46
Apple M3 160.58
It depends on what you're doing.I'm a software developer using a compiler that 100%s all cores. I like fast multicore.
Apple Mac Pro, 64gb, M2 Ultra, $7000
Apple Mac mini, 32gb, M2 Pro, 2TB SSD, $2600
[Edit2] Compare to: 7950x is $500 and a very fast SSD is $400, fast 64gb is $200, very good board is $400 so I get a very fast dev machine for ~$1700 (0,329 p/$ vs. mini 0,077 p/$)[Edit] Made a c&p mistake, the mini has no ultra.
Maybe use a benchmark that actually makes sense for CPUs, rather than something that's always much faster on a GPU (eg. M3 Pro as any sane user would use it for Blender is 2.7x the performance of a Ryzen 7950X, not 0.4x).
> Apple Mac mini, 32gb, M2 Ultra, 2TB SSD, $2600
Not a real thing. You meant M2 Pro, because the Max and Ultra chips aren't available in the Mac mini.
(corrected my c&p mistake with the mini, thanks)
(Even phoronix is scares and mostly focuses on laptops - I have no laptop)
https://www.geekbench.com/doc/geekbench6-benchmark-internals... (page 18)
"Randomly" picking
14900K 215.3 Klines/sec
7950x 230.3 Klines/sec
M2 Ultra 233.9 Klines/sec
M3 Max 196.5 Klines/secM3 Max: 3898
7950x: 2951
The ST advantage of Apple Silicon is real. 7950x does do better in highly parallel tasks.
To me, Apple Silicon is clearly leading clients over AMD/Intel. Hence, my original reason for why AMD's announcement isn't "exciting". Because Apple Silicon is so far ahead in client.
Of course, AMD can crank up the core via Epyc/Threadripper and Apple has no answer. For that, you'd need to look into ARM chips from Ampere/Amazon for a competitor.
A 7950x system at IDLE uses 50% more power than an M3 Max going all-out on a CPU workload.
https://www.guru3d.com/review/amd-ryzen-9-7950x-review/page-...
At least on NVIDIA hardware, Blender can use the GPU's raytracing capabilities rather than just the general-purpose GPU compute capabilities. Which means it doesn't take a very expensive GPU at all to outperform high-end CPUs.
Though Blender may have an optimization for avx512 but not for SME or Neon.
But the vast majority will use GPUs to do rendering for Blender.
Try SPEC or its close consumer counterpart, Geekbench.
As an anecdote, all my Python and Node.js applications run faster on Apple Silicon than Zen4. Even my multithread Go apps seem to run better on Apple Silicon.
On Passmark Apple CPUs are pretty far down the list.
On Geekbench I gave up after scrolling a few pages.
And "run faster on Apple Silicon than Zen4" means nothing. On the low end you have fairly cheap Ryzen 3 laptop chips, and on the high end you have Threadripper behemoths.
I would stick to SPEC and Geekbench.
Even Cinebench 2024 isn't too bad nowadays though R23 was quite poor in correlation.
In general, not only are Apple Silicon CPUs faster than AMD consumer CPUs, but they're 2-4x more power efficient as well.
I will repeat:
"On Geekbench I gave up after scrolling a few pages."
SPEC doesn't seem to have easily browsable results, but we can find the Cinebench 2024 ones easy and guess what? Apple isn't at the top. Not even close: https://www.cgdirector.com/cinebench-2024-scores/
For Apple you need to go to https://browser.geekbench.com/mac-benchmarks
Then compare numbers by hand I assume.
Though what I would love is compile-time vs. $ (as mentioned, I'm a software developer). The 7950x is $500 and a very fast SSD is $400, fast 64gb is $200, very good board is $400 so I get a very fast dev machine for ~$1700.
ASUS ROG Zephyrus G16 (2024)
Processor: Intel Core Ultra 9 185
Memory: 32GB
Cargo Build: 31.85 seconds
Cargo Build --Release: 1 minute 4 seconds
ASUS ROG Zephyrus G14 (2024)
Processor: AMD Ryzen 8945HS / Radeon 780M
Memory: 32GB
Cargo Build: 29.48 seconds
Cargo Build --Release: 34.78 seconds
ASUS ROG Strix Scar 18 (2024)
Processor: Intel Core i9 14900HX
Memory: 64GB
Cargo Build: 21.27 seconds
Cargo Build --Release: 28.69 seconds
Apple MacBook Pro (M3 Pro 11 core)
Processor: M3 Pro 11 core
Cargo Build: 13.70 seconds
Cargo Build --Release: 21.65 seconds
Apple MacBook Pro 16 (M3 Max)
Processor: M3 Max
Cargo Build: 12.70 seconds
Cargo Build --Release: 15.90 seconds
Firefox Mobile build:
M1 Air: 95 seconds AMD 5900hx: 138 seconds Source: https://youtu.be/QSPFx9R99-o?si=oG_nuV4oiMxjv4F-&t=505
Javascript builds
Here, Alex compares the M1 Air running Parallels emulating Linux vs native Linux on AMD Zen2 mobile. The M1 is still significantly faster. https://youtu.be/tgS1P5bP7dA?si=Xz2JQmgoYp3IQGCX&t=183
Docker builds
Here, Alex runs Docker ARM64 vs AMD x86 images and the M1 Air built the image 2x faster than an AMD Zen2 mobile. https://youtu.be/sWav0WuNMNs?si=IgxeMoJqpQaZv2nc&t=366
Anyways, Alex has a ton more videos on coding performance between Apple, Intel and AMD.
Lastly, this is not M1 vs Zen2 but it's M2 vs Zen4.
LLVM build test
M2 Max: 377 seconds Ryzen 9 7940S: 826 seconds
Would love to see a 7950x/64gb/SSD5 comparison, perhaps (see https://www.octobench.com/ for SSD impact on Go compilation) he will create one in the future (channel bookmarked). But would I still need to use a laptop, I would probably switch back to Apple (have an iMac Pro as decoration standing in the shelf, was my last Apple dev machine).
The $5000 16 Pro looks great as a machine. When still working at eBay, the nice thing was one always got the max specced machine as a developer back in the days - so that would probably be it. Real nice one.
[Edit]
Someone suggested looking at Geekbench Clang, which brought some insights for my desktop usage:
(it looks like top CPUs are more or less the same, ~15% difference)
"Randomly" picking
M2 Ultra 233.9 Klines/sec
7950x 230.3 Klines/sec
14900K 215.3 Klines/sec
M3 Max 196.5 Klines/secSpeed vs. $ is of course a different story than pure speed; kinda hard to capture in a number I guess.
Most Go projects compile more than fast enough even on my 7 year old i5, although there are exceptions (mostly crummy hyper-overengineered projects).
Note: M3 Max is a 40w CPU maximum, while 7950x is a 230w CPU maximum. The stated 170w max is usually deceptive from AMD.
Source for 7950x power consumption: https://www.anandtech.com/show/17641/lighter-touch-cpu-power....
Note that the M3 Max leads in ST in Cinebench 2024 and 2-3x better in perf/watt. It does lose in MT in Cinebench 2024 but wins in GB6 MT.
Cinebench is usually x86 favored as it favors AVX over NEON as well as having extremely long dependency chains, bottlenecked by caches and partly memory. This is why you get a huge SMT yield from it and why it scales very highly if you throw lots of "weak" cores at it.
This is why Cinebench is a poor CPU benchmark in general as the vast majority of applications do not behave like Cinebench.
Geekbench and SPEC are more predictive of CPU speed.
Here's a content creation benchmark (note that for some tasks a GPU is also used):
https://www.pugetsystems.com/labs/articles/mac-vs-pc-for-con...
Meanwhile, Geekbench does run real world workloads using real world libraries. You can look at subtest scores to to see "real world" results.
Pugetsystem benchmarks are pretty good. It shows how Apple SoCs punch above their weight in real world applications over benchmarks.
Regardless, they are comparing desktop machines using as much as 1500 watts vs a laptop that maxes out at 80 watts and Apple is still competing well. The wins in the PC world are usually due to beefy Nvidia GPUs that are applications have historically optimized for.
That's why I originally said ARM is leading AMD - specifically Apple ARM chips.
- Dijkstra's algorithm: not used by vast majority of applications.
- Google Gumbo: unmaintained since 2016.
- litehtml: not used by any major browser.
- Clang: common on HN, but niche for general population.
- 3D texture encoding: very niche.
- Ray Tracer: a custom ray tracer using Intel Embree lib. That's worse than Cinebench.
- Structure from Motion: generates 3D geometry from multiple 2D images.
It also uses some more commonly used libraries, but there's enough niche stuff in Geekbench that I can't say it's a good representation of a real world workloads.
> Regardless, they are comparing desktop machines using as much as 1500 watts vs a laptop that maxes out at 80 watts and Apple is still competing well. The wins in the PC world are usually due to beefy Nvidia GPUs that are applications have historically optimized for.
They included a laptop, which is also competing rather well with Apple offerings. And it's not PC's fault you can't add a custom GPU to Apple offerings.
You can cherry pick libraries that Geekbench 6 uses that are old or niche but do they do a good job as proxies?
The point of a general CPU benchmark is to predict CPU performance. For that, Geekbench does an outstanding job. [0]
[0]https://medium.com/silicon-reimagined/performance-delivered-...
Yes, and the renderer is the same as in Cinema 4D which is used by many, while custom ray tracer build for Geekbench is not used outside benchmarking.
The blog post you linked just shows that one synthetic benchmark correlates with another synthetic benchmark. Where do SPEC CPU2006/2017 benchmarks guarantee or specify correlation with real-world performance workloads?
Cinebench fits characteristics of a good benchmark defined by SPEC [1]. It's not a general benchmark, but biased benchmark. It's floating-point intensive. It should do a perfect job of evaluating Cinema 4D rendering performance, a good job as proxy for other floating-point heavy workloads, but a poor job as proxy for other non-floating-point heavy workloads. The thing is, most real world workloads are biased. So, no single-score benchmark result can do an outstanding job of predicting CPU performance for everyone (which is what a general CPU benchmark with a single final score aims to do). They are useful, but limited in their prediction abilities.
SPEC is the industry standard for CPU benchmarking.
What you want to do is look at the benchmarks for the thing you're actually using it for.
> they're 2-4x more power efficient as well.
This is generally untrue, people come to this conclusion by comparing mobile CPUs with desktop CPUs. CPU power consumption is non-linear with performance, so a large power budget lets you eek out a tiny bit more margin. For example, compare the 65W 5700X with the 105W 5800X. The 40 extra watts buys you around 2% more single thread performance, not because the 5700X has a more efficient design -- they're the exact same CPU with a different power cap. It's because turning up the clock speed a tiny bit uses a lot more power, but desktop CPUs do it anyway, because they don't have any such thing as battery life and people want the extra tiny bit more. Or the CPU simply won't clock any higher and doesn't even hit the rated TDP on single-threaded workloads.
The extra power will buy you a lot more on multi-threaded workloads, because then you get linear performance improvement with more power by adding more cores. But that's where the high core count CPUs will mop the floor with everything else -- while achieving higher performance per watt, because the individual cores are clocked lower and use less power.
It looks though as if AMD/Intel feel threatened by Snapdragon though - we'll see what AMD Strix / Halo brings for the first meaningful x86 mobile processor in years (or Luna Lake).
It's mostly not. Its real purpose is to improve performance on threaded workloads.
Multi-core CPUs work like this: At the max boost a single core might use, say, 50 watts. So if you have 8 cores and wanted to run them all full out, you'd need a 400 watt power budget, which is a little nuts. It's not even worth it. Because you only have to clock them a little lower, say 4GHz instead of 5, to cut the power consumption more than in half, and then you get a TDP of e.g. 100W. Still not nothing but much more reasonable. You can also cut the clock speed even more and get the power consumption all the way down to 15W, but then you're down to 2GHz on threaded workloads and sacrificing quite a bit of multi-thread performance.
So they're not just trying to eek out a couple of percent, even though that's all you get from single thread improvement, because a single core was already near or at its limit. Whereas 8 cores at 4GHz will be legitimately twice as fast as the same cores at 2GHz. But they'll also use more than twice as much power. Which matters in a laptop but not so much in a desktop.
Of course, the thing that works even better is to have 16 cores or more that are clocked a little lower, which improves performance and performance per watt. The performance per watt of the 96-core Threadrippers are astonishingly good -- even though they're 360W. But that also requires more silicon, so those ones are the expensive ones.
If you downclock that AMD chip, it does get more efficient, but also loses by even larger margins.
But you can't really expect an older CPU on a previous generation process node with lower power consumption to be faster.
The problem with Geekbench is it's trying to average the scores from many different benchmarks, but then if some of them are outliers (e.g. one CPU has hardware acceleration or some other unusual aptitude for that specific workload), it gets an outsized score which is then averaged in and skews the result even if it doesn't generalize.
Geekbench CPU benchmark does not optimize for accelerators. It optimizes for instruction sets only.Apple Silicon also has more memory bandwidth the primary purpose of which is to feed the GPU because most CPU workloads don't care about that, but if you average in the occasional ones that does then you get more outliers.
Which is why the thing that matters is how it performs on the thing you actually want to run on it, not how it performs in aggregate on a bunch of other applications you don't use.
M2 Ultra 233.9 Klines/sec
7950x 230.3 Klines/sec
14900K 215.3 Klines/sec
M3 Max 196.5 Klines/sec
are nearly the same.And the argument is, you can't use Blender to compare CPU performance because of that?
"Even my multithread Go apps seem to run better on Apple Silicon."
As a Go developer, I'd love to hear your story: How much faster does your Apple Silicon compile compare to a Zen4 (e.g. the 7950x?)? For example 100k lines of Go code.
I might switch back to Apple again (used Apple for 20+ years), if it's faster at compilation speed.
Good ol, compare a $400 piece of equipment with a $3000 piece of equipment. I wonder what will win. (unironically, most of the time, the $3000 piece of equipment doesnt win)
In multithreaded workloads, 2 of their current e-cores are roughly equivalent to 1 p-core, so that would represent the equivalent of 4 extra p-cores.
In any case, M3 Max uses less than 55w of power in CPU-only workloads while a desktop 7950x peaked out at 332w of power according to Guru3D (without an OC).
The fact that M2 Ultra hits so close while peaking out at only around 100w of CPU power is pretty crazy (M2 Ultra doesn't even hit 300w with all CPU and GPU cores maxed out).
I know that there's some work happening about UEFI+ARM (https://developer.arm.com/Architectures/Unified%20Extensible...), but its support is very rare. The only example I can recall is Ampere Altra: https://www.jeffgeerling.com/blog/2023/ampere-altra-max-wind...
Unless you need the GPIO theres zero reason to overpay for a Pi 5 for example when you can pick up decent second hand mini pc's on ebay for a lower price.
Case in point, a couple of months ago I was able to nab two brand new still in box Dell Optiplex 3050's (Core i7 6700T 4 Cores, 2.8Ghz, 16GB RAM Win 10 hardware license, 256gb ssd, with mouse & keyboard) for £55 each delivered. The base 4gb model Pi 5 comes in at £80-£100 once you add power, storage and a case.
Sure, its not ARM but you're not likely to be doing anything that _needs_ ARM.
Even then, both usb-to-gpio and mini PCs with gpio exist. Unless you want something really small, then there's still pi zero and Arduino
x86: Microsoft requires that end-users are allowed to disable secure boot and control which keys are used.
arm: Microsoft requires that end-users are not allowed to disable secure boot
This isn't a hardware issue, but simply a policy issue that Microsoft could solve with a stroke of a pen, but since Microsoft is such a behemoth in the laptop space, their policies control the non-apple market.