Performance of the Macbook Pro 2018

CPUs (be it Intel or AMD) have for the last several years 1 been past that point in the performance curve which makes them 'good enough' for the average user. Only specialized workloads have need additional compute power but even then it's usually a case of diminishing returns 2. Ditto with GPUs - besides games, there are a only a handful of applications that need anything beyond an integrated GPU. Both factors, along with ever-lowering cost for memory and SSDs, mean most computers bought in the last couple of years work well for all regular workloads.

Mine, unfortunately, cannot be classified as a normal workload. I go well beyond surfing the web, watching movies, editing the occasional document. I use my computer heavily - sometimes pushing it to its limits - to manage Capture One and Lightroom catalogs, edit photos frequently, transcode my movie collection, edit home videos and maintain this blog. For these tasks, my workhorse for the last several years has been a late-2013 15” Macbook Pro with base configuration 3. It has been long in the tooth - all my editing sessions have frequent coffee breaks while I wait for the Macbook to catch up after queueing my commands. So, I'd been eyeing new generations of Macbook Pros for the last couple of years, but each time it felt like a compromise. The current generation 15" Macbook Pros, however, had me very interested in them:

  1. 6-core CPUs are now baseline, giving a direct 50% theoretical boost in multithreaded workloads
  2. They can be configured with up to 32 GB RAM 4. The 2016, 2017 models maxed out at 16 GB
  3. Macbooks currently have the fastest SSDs of any laptop. Where my 2013 model manages about 650 MB/s, the 2018 models consistenly hit 2500 MB/s. Coupled with APFS, activities traditionally I/O bottlenecked such as application installs, file copies and time-machine backups are instantaneous
  4. With Capture One Pro now making good use of GPUs for certain operations, I'm ready for a laptop with a dedicated GPU 5
  5. The much maligned butterfly keyboards now have additional shielding to make them more resilient to specks of dust

Taking advantage of an instant rebate on B&H, I bought a 2018 MacBook Pro with a 2.2GHz Coffee Lake CPU, Radeon 555X graphics, 32 GB RAM and 512 GB SSD. So, how much of a performance boost does a 5 year wait bring? 6

Tests

To answer the question, I ran tests with applications frequently used that are most bottlenecked on my 2013 Macbook Pro.

Each test pushes specific components. Importing in Capture One first taxes I/O as it copies files and updates the catalog and then is CPU limited as it generates previews. Adjustments are RAM intensive. The Export on the other hand is GPU intensive while also requiring adequate CPU and RAM. Lightroom Panorama Merge maxes out CPU and eats gobs of RAM. Handbrake transcoding is entirely CPU limited. In addition to just comparing the two Macbooks, some tests help quantify the performance benefits of a dedicated GPU while some others help assess how well a particular program behaves under load.

1. 1000 RAW Import

I start by importing 1000 RAWs (45MP NEFs) into a Capture One Pro Session and note the import and preview generation times separately. This is a realistic scenario as I typically have around a 1000 images to import after a shoot.

The 2018 Macbook easily bests the 2013 model in both phases of the import. And makes a meaningful difference in the grand scheme of things - what took 45 minutes before, now takes 26 minutes! Nevertheless, the result is a bit surprising. For all my tests in Capture One, I created a new Session on an external HDD I should note that the Session files and the actual RAWs all reside on an external HDD. So I expected Capture One to be I/O bound in the initial Import phase, since it is essentially copying over RAWs and updating the catalog.

2. Adjust 1000 RAWs

Next, I apply adjustments to the 1000 images imported earlier. Usually I cull images prior to moving on to the post-processing phase, so a typical number for me to apply global adjustments is between 100-150. But with this test, I wanted to stress my new toy. The adjustments include Exposure, Levels, White Balance, Clarity, Lens Correction and one Layer.

In this test too, the 2018 Macbook beats the 2013 model - it takes about half the time. This test taxes the compute resources (CPU and GPU) and needs a lot of memory - so to call the 2018 Macbook twice as fast as the 2013 model is fair.

3. Export 100 Photos

Now for the Export. For this test, I export 100 images in .jpg format at full resolution and 66 quality. This is a realistic test - both in number and output quality. Critically, Capture One is set to make use of the GPU for this test.

This is probably the best result of all - the 2018 Macbook Pro is 72% faster than my 2013 Macbook. Or to look at it another way, in terms of images exported per minute, the 2018 model is 3.5 times faster than the 2013 model. But due to the nature of the Export, this is actually a comparison of the 2018's dedicated GPU with the 2013's integrated GPU - naturally the former trounces the latter. Exporting from Capture One is probably the most common operation I carry out, so any performance improvement here benefits me most.

4. Export 100 Photos without H/W Accl.

This test is the same as before, the difference being that hardware acceleration (via OpenCL) is disabled in Capture One. So this test removes GPU from the equation and assesses CPU performance improvements between the two Macbooks, as an academic exercise.

While I'll never be switching off hardware acceleration, it's good to see that over five generations of Intel CPU's, there has been a 2x improvement in performance.

5. Export 550 Photos

For this test, I turned back on hardware acceleration and exported 550 7 images with the same output settings as before. This test helps understand the nature of export performance in Capture One - whether it scales linearly with the number of images or not (again, an academic exercise).

The results show fairly good linearity. A runtime of 7072s as opposed to a theoretical 7463s - off by about 5% which is within margin of error.

6. Lightroom - 8 Photo Pano

In this test, I time how long it takes Lightroom to preview the panaorama image (since I use the preview to judge whether the stitch is worth it) and how long it takes to actually create the final image. This is a fairly typical scenario - after a vacation or a hike, I'll have a few panoramas to stitch in Lightroom. I like to have a lot of overlap between the images to be merged so that the final image is as clean and seamless as possible - 8 is a common scenario.

I knew from the get-go that in this test the 2018 model would demolish the 2013 Macbook Pro - Lightroom hogs memory and stitching panoramas needs even more memory. The preview on the 2013 is gated by the CPU and therefore it is no surprise that the 2018 gives a 40% improvement. The actual merge is where I see big returns. On the 2013, Lightroom very quickly ran out of RAM and ate into swap (I noted a peak consumption of 6 GB by Lightroom's process). So the overall runtime of 224s was, I suspect, dominated by offloading other applications from memory, allocating it to Lightroom and then allocating virtual memory to it from swap. On the 2018 this test just breezed through.

7. Lightroom - 22 Photo Pano

This is similar to the previous test, but with more photos - 22. Although its a good test, its a rare scenario. In the last several years, I've had to merge 22 images just once.

With 22 photos to stitch, Lightroom struggled on the 2013 Macbook Pro - preview took 300s and the merge 908s (5 and 15 minutes respectively!). Memory was the biggest bottlenect for both steps. On the 2018 Macbook Pro, with 32 GB RAM, even a 22 photo pano was easy. During the merge, the memory consumption peaked at 16.7 GB - just over half the available physical memory. Interestingly, this also shows that to some extent Lightroom's Merge scales linearly with the number of images - the runtime on the 2018 of 59s is off by the expected 60.5s by just 2%.

8. Handbrake

In this final test, I use handbrake to transcode a movie from .MP4 to .M4V using the Apple TV 3 preset (1080p30). I have a good collection of movies and TV shows MP4s ripped from long lost DVDs over the years - and I transcode them to an Apple TV compatible format on a need basis.

The 8th generation Coffee Lake puts a solid show compared to the 4th gen Haswell - 40% improvement is significant.

For enthusiast photographers like me 8, upgrading computers annually doesn't work out 9. Even for those with bigger budgets, annual upgrades dont bring a meaningful jump in performance to justify the cost. I've settled on a 5 year upgrade cycle. With such long waits between new machines, performance improvements are immediately apparent in day to day use, which makes it easier to justify such a pricey buy.


1. This happened with Nehalem, Sandy Bridge - around 2009-2010

2. I refer to typical workloads alone - for server type situations, Intel and AMD have been quite successful at stuffing multiple cores on one die with oodles of L3 cache from the beginning.

3. A 2 GHz Haswell CPU, integrated Crystalwell graphics, 8 GB RAM and a 256GB SSD.

4. I was maneuvered into going with the 8 GB base model, which probably hurt me over the years more than any other spec.

5. I'm not much of a gamer, so I've always preferred to go with integrated graphics on my laptops. Why add another component which eats battery, drives up costs and might fail?

6. Which are becoming rarer these days on the Intel front where year-on-year performance gains have plateaued for the last several generations.

7. Why 550 you ask? I ambitiously started with 1000 images. But I lost patience after 2 hours - the number the Macbook managed was 550. So ran with it.

8. I define an 'Enthusiast Photographer' as one who while proficient at the trade, does it out of interest and doesn't do for a living.

9. The fact that over the years Apple has been driving up costs of their laptops and PCs, indeed all devices, leads to longer upgrade cycles.