HOME · Twitter · LinkedIn · publications · @ Ars Technica · Running IPv6 (Apress, 2005) · BGP (O'Reilly, 2002) · BGPexpert.com · presentations · email@example.com
No more bottlenecks: the late 2013 MacBook Pro reviewed
Over the next few days, I'll publish my review of the new 13" MacBook Pro here in several installments. This is the second one, looking at CPU performance.
Every time I bought a new computer, it was faster than the previous one. Sometimes by a lot, sometimes by a little. What I'll be doing here is compare the new MacBook Pro to my old mid-2011 MacBook Air. I paid extra for the upgrade to a 1.8 GHz Core i7-2677M CPU. This CPU has 4 MB L3 cache, and although it's advertised as a 1.8 GHz part, it actually runs at 2.6 GHz with both cores active, and turbo boosts to 2.9 GHz when only one core is running.
The new MacBook Pro has a 2.4 GHz Core i5-4258U CPU with 3 MB L3 cache. I haven't been able to find any information on which turbo ratios apply to the 2.4 GHz frequency with two cores in use, but it looks like this is also 2.6 GHz. The maximum CPU frequency (when using one core) is 2.9 GHz, same as the Air.
You can monitor the CPU frequency and power use of your Intel CPU with the Intel® Power Gadget. (Update 2019-7-1: the link doesn't work anymore, but find new links and more background info on the Powergadget in this PCGuide article.)
But let's have a look at some benchmarks first.
Geekbench 2 32-bit
MBP: 7110 +21%
Geekbench 3.1.2 32-bit single core
MBP: 2703 +18%
These numbers are not particularly exciting, especially considering that I went from a two-year-old "Air" to a brand new "Pro" machine. However, things are better for certain benchmarks and real-world tasks:
Geekbench 3.1.2 32-bit multicore
MBP: 5640 +31%
Handbrake 0.9.9 SD video conversion
MBA: 134 seconds
MBP: 96 seconds, 40% faster
Handbrake 0.9.9 HD video conversion
MBA: 270 seconds
MBP: 157 seconds, 72% faster
QuickTime QuickSync HD video conversion
MBA: 131 seconds
MBP: 48 seconds, 2.7x faster
Unfortunately, using QuickTime to convert to 480p, 720p or 1080p using the respective presets, which uses QuickSync, does result in really large files, so in practice it's not all that useful.
Cinebench 15 GPU
MBA: can't run the test
When running the Cinebench benchmark with 4, 2 or 1 CPU threads, it becomes clear that the MacBook Pro is much better at multithreaded tasks:
Cinebench 15 CPU, 1 thread
MBP: 106 +8%
For some reason both computers stick to a 2.6 GHz CPU frequency most of the time even under single threaded loads. It looks like MacOS doesn't make the second core sufficiently idle to fully benefit from the turbo boost.
Cinebench 15 CPU, 2 threads
MBP: 195 +42%
Cinebench 15 CPU, default number of threads (4)
MBP: 262 +40%
The MacBook Pro can do 1.9 times as much work when using both cores, but the MacBook Air only sees a 40% improvement when going from using one to using two cores. The Power Gadget shows why:
The MacBook Air runs into its power limits very quickly when using both cores fully, so the CPU clock has to be throttled back significantly below the maximum 2.6 GHz. Interestingly, the MacBook Air and the MacBook Pro use roughly the same amount of power with the CPU at full utilization: the MBA a little over 20 W, the MBP a little under. However, for the Air this is above its 17 W Thermal Design Power (TDP), so it quickly throttles back the CPU frequency. The MacBook Pro's TDP is 28 W, so it can run at full blast with thermal room to spare.
The fan speeds reflect all of this. When using 400% CPU time (such as when encoding video with Handbrake), the MBA's fan quickly spins up from its regular 2000 RPM, eventually reaching 6500 RPM, which is quite noisy. The MBP's fan runs at 1300 RPM under normal circumstances, and didn't go beyond 2200 RPM with the CPU at 400% for some time, which is barely audible.
Last but not least, let's have a look at OpenCL (not to be confused with OpenGL) performance. Apparently Apple is leveraging OpenCL for more and more tasks. One of the GPUs in the new Mac Pro doesn't even drive any displays and is just there for number crunching.
Unlike most programs, which run on the CPU, or OpenGL, which runs on the GPU, OpenCL programs can run on the CPU and most GPUs, or even on both at the same time. The Luxmark OpenCL benchmark is a bit (14%) faster on the MBP's CPU than on the MBA's CPU.
Luxmark 2.1beta2 OpenCL benchmark, CPU
MBP: 207 +14%
The MacBook Air has Intel HD 3000 graphics on board, which doesn't support OpenCL. The HD 5100 Iris GPU that's part of the the MacBook Pro's CPU die does, and this is 78% (!) faster than using the CPU.
Luxmark 2.1beta2 OpenCL benchmark, GPU
Unlike the CPU, the GPU has no problem pushing the i5-4258U past its 28 W TDP, so it has to throttle back after 20 seconds or so. Note that this is with the CPU mostly idle.
Using the CPU and GPU together increases performance another 9%, for a total of 121% over the maximum the MacBook Air can do.
Luxmark 2.1beta2 OpenCL benchmark, CPU+GPU
MBA: 181 (CPU only)
MBP: 401 +121%
I have to be honest: this comparison started from a place of disappointment. Intel didn't move the needle much regarding single core performance on an identically clocked system. (However, two years ago I had to pay extra to get the 1.8 - 2.9 GHz i7, while the 2.4 - 2.9 GHz i5 is now in the base configuration.) But the extra thermal headroom, and probably the faster memory (but less level 3 cache), allows the new Haswell CPU to push ahead in multithreaded performance, which should benefit most number crunching type applications, such as video encoding. And applications that make use of OpenCL and thus the much beefier GPU should benefit a lot. So I'm still reasonably happy with the performance of this computer.