A month ago, I explained what performance to expect in Apple’s new Mac Studio models. Now that I have a Studio (Max) sat behind my M1 Pro MacBook Pro, this article compares their benchmark results.
The two models that I’m comparing are:
- MacBook Pro 16-inch M1 Pro, 16-core GPU, 32 GB memory, 2 TB SSD, costing £3,399
- Mac Studio M1 Max, 24-core GPU, 32 GB memory, 2 TB SSD, costing £2599, to which you must add a keyboard, input device and display.
The tools used to benchmark them are:
- My own app AsmAttic for in-core performance,
- Geekbench 5.4.2 (503844),
- Cinebench R23.200 (Build RBBENCHMARK330542),
- My own app Stibium for SSD performance,
- My own app Mints for Neural Engine performance.
Both the M1 Pro and Max have the same general-purpose CPU cores: eight Performance (P) cores, and two Efficiency (E) cores. These were tested separately using tight loops of assembly code in AsmAttic.
The P cores were assessed with a workload of eight threads run at maximum Quality of Service (QoS), which fully loads all the P cores without any contribution from the E cores. Performance on the two chips was identical for integer, floating-point, NEON (vector processor) and Accelerate (Apple’s performance library, presumed here to use NEON too).
The E cores on both chips are managed similarly by macOS: with a single low QoS thread, they’re run at low frequency (below 1 GHz), but when loaded with two or more threads, frequency is boosted to 2 GHz. This has the strange effect that the time taken to run a single-threaded test is nearly twice that required to run two threads. For these tests, E cores were assessed with a workload of two threads run at minimum QoS, which fully loads both the E cores and runs them at maximum frequency, without any contribution from the P cores. Performance on the two chips was identical for integer, floating-point, NEON and Accelerate.
Geekbench was used to compare performance on more general computation tasks. Single- and multi-core scores were essentially the same:
- Single-core scores were 1774 (Pro) and 1790 (Max).
- Multi-core scores were 12532 (Pro) and 12805 (Max).
Scores given are the median of three.
Graphics and GPU performance
Cinebench and Geekbench Compute (OpenCL) scores are harder to interpret. While OpenCL returned a higher (faster) score on the M1 Max, there was essentially no difference in Cinebench scores:
- OpenCL scores were 37,795 (Pro) and 53,031 (Max).
- Cinebench multi-core scores were 12,358 (Pro) and 12,377 (Max).
I’m very grateful to Damiano for pointing out that, while a graphics benchmark, Cinebench doesn’t use the GPU at all, and its results therefore represent CPU computation rather than GPU. OpenCL is another problem, as support for that is now deprecated in favour of Metal and Apple’s Accelerate libraries.
Although there are several benchmarks which could be applied to the Apple Neural Engine (ANE) in M1 chips, I decided to use a standard task of Visual Look Up which I know to run at least in part on the ANE. Log entries give total processing time for the ANE phases of this task, and overall time to handle the search request at the end. Although no large differences were seen, there is the suggestion that the M1 Max is slightly quicker, possibly reflecting parts of the task being run on the GPU rather than the ANE, which is believed to be identical between the two chips. Results were:
- Total processing times were 740.75 ms (Pro) and 656.44 ms (Max).
- Search request times were 1.447 s (Pro) and 1.367 s (Max).
As both Macs have 2 TB internal SSDs, direct comparison should be both possible and meaningful. Overall transfer rates were measured using Stibium, on ten sets of test files, and suggest that the internal SSD in the Mac Studio is slightly faster than that in the MacBook Pro. Rates were:
- Read rates were 6.26 (4.49-9.87) GB/s (MBP) and 6.78 (4.5-22.16) GB/s (Studio).
- Write rates were 7.17 (4.48-7.65) GB/s (MBP) and 7.52 (4.99-7.82) GB/s (Studio).
M1 Pro or Max?
On the benchmarks reported above, there is little to choose between the M1 Pro fitted in a MacBook Pro 16-inch, and the M1 Max in a Mac Studio. The only substantial difference between the chips as tested was the number of GPU cores, and I’m not convinced that the benchmarks available adequately reflect real-world performance in apps using Metal effectively.
The only informed way to determine which chip is the better for you is by carefully testing GPU-intensive apps which are important to you. If you don’t rely on GPU-intensive tasks much, then the M1 Pro should do just fine unless you need twice the number of CPU cores in the M1 Ultra.
Thanks to Damiano for pointing out that Cinebench doesn’t use the GPU.