3 Comments

Develop Smoothly with the Right MacBook CPU

If you’re a developer shopping for a new MacBook, choosing a CPU can be confusing. Apple always gives you a handful of different CPUs options, all with different specs and prices, but it’s very difficult to understand how your development experience will be affected by this choice.

You can put thought into the other options that Apple lets you customize. For hard drive capacity, it’s easy to check the amount of space you’re using on your current machine and decide on a hard drive size for your new machine. If you’re comparing two different screen sizes, you can decide if you’d rather have a cheaper and lighter machine or a larger screen.

You can’t do that with CPUs. For instance, the latest round of 15″ Pro Retinas (released in late 2013) gives you three CPU options:

  • 2.0GHz Quad-core Intel Core i7, Turbo Boost up to 3.2GHz
  • 2.3GHz Quad-core Intel Core i7, Turbo Boost up to 3.5GHz [Add $100.00]
  • 2.6GHz Quad-core Intel Core i7, Turbo Boost up to 3.8GHz [Add $300.00]

But what does this mean? Is an extra 0.3GHz worth an extra $100? Will the higher-end CPU build your project any faster? It’s hard to tell just by looking at these numbers. Others have suggested that compilation is predominately CPU-bound, but how big of a difference will there be if you’ve already got top-of-the-line hardware from a year ago?

To try to gain more insight, I charted the PassMark score of each CPU option for the last five iterations of the MacBook Pro line. PassMark is a benchmark that’s used to quantitatively score the performance of a processor. According to them, the benchmark results “were gathered from users’ submissions to the PassMark web site as well as from internal testing”.

asdf
PassMark scores for MacBook Pro machines.

Iteration after iteration, benchmark numbers get higher and higher, as you’d expect. Processors in 15″ models are all quad-core and vastly outperform the dual-core 13″ models.

If we look at the 15″ models, there seems to be a trend of an iteration’s highest-end processor scoring somewhere in-between the next iteration’s lowest and mid-grade processor. This is somewhat helpful information. This means that if you’re considering a purchase now, you can either choose the $300 option today, or wait till the fall and choose either the standard or $100 option (while additionally weighing the benefit of other improvements rumored to be in next fall’s lineup).

There appears to have been two occasions (late 2011 and 2012) when the performance boost gained from the highest-end CPU was lower than average.

There seem to be a couple of artifacts in the data. First, the cheapest 15″ option in late 2011, an Intel Core i7-2675QM, is shown to perform worse than any option from the previous iteration, the cheapest of which was the i7-2635QM. This could be explained by benchmark flakiness, or it could be that Apple actually offered a slower processor than before. Second, the highest-end CPU available on late 2013 13″ models is shown to be slower than the next-cheapest option. It’s unlikely that this is actually the case.

This data doesn’t tell you exactly how fast your unit tests or other build phases will take to execute. But it should, when compared with metrics for the CPU you’re currently running, help you put together your next development box.