(Originally published 3 April 2011, updated 23 March 2012)
It seems like never a week goes by without me receiving a query as to whether a Solid State Drive (SSD) will improve Lightroom’s overall performance. Similar questions regularly arise on Adobe’s Lightroom User to User forum. Unfortunately, the answer is not a simple yes or no. This essay will identify some of the aspects impacting on performance along with some methods by which their effects can be mitigated or removed altogether. Finally, I will compare Lightroom’s general performance between a conventional disk drive and an SSD.
The first area that I want to look at is the operating system. Adobe’s minimum system requirements for Lightroom 3 on Windows platform would suggest that a fairly basic laptop running Windows XP and 2GB of ram is perfectly fine. However, the reality is a world away from these minimum requirements. For a start, Windows XP is more than 10 years old, can only address up to 4GB of ram (2GB per application), and predates the time when computers with multi-processor/core CPUs became the norm. Also, memory fragmentation is a fairly common issue with XP, especially when user has activated the /3GB startup switch so that an application can address more than 2GB. Fortunately, although not in the eyes of XP die-hards, with Lightroom 4 Adobe have said goodbye to XP (not before time). So having dispensed with the dinosaur what operating system should do I recommend? Well, whether it’s Microsoft or Apple the ideal choice is one that runs Lightroom in 64-bit mode.
The main advantage of a 64-bit operating system whether it’s Windows or Mac is that it enables suitably written applications to access more than 4GB of ram. Lightroom is such an application, and as it loves ram it will generally run much better, especially if other applications are running in background.
The second area I want to look at is the CPU. Again, Lightroom is renowned for being very demanding of the CPU. In particular, preview rendering and loading images into Develop module, especially when luminance noise, color noise, sharpening, and lens corrections are applied to a photo. In this context, Lightroom’s performance will benefit greatly when recent CPU types such as the Intel Core i5 or i7 are used, especially when they’re combined with 4GB or more of ram.
It’s worth noting that Intel’s latest Core i5 and i7 CPUs (aka Sandy Bridge) have resulted in a very substantial improvement in preview rendering times compared to last years Intel CPUs, and an even greater improvement over the fastest Intel Core 2 Duo CPUs from 2009. For example, I have first hand experience of running Lightroom 3.4 on a MacBook Pro 2.8GHz Core 2 Duo (mid 2009 model) and MacBook Pro 2.3 GHz Core i7 (early 2011 model). The following are the average times over three test runs to import from conventional disk drive and render high quality 1:1 previews for 300 Canon 5D MkII raw photos. These are the previews used in the Library module. No develop adjustments where applied to the photos before or during the import/previewing rendering process.
- MacBook Pro 2.8 GHz Core 2 Duo with 8GB ram = 32 min 10 sec
- MacBook Pro 2.3 GHz Core i7 with 4GB ram = 19 min 40 sec
- MacBook Pro 2.3 GHz Core i7 with 8GB ram = 15 min 17 sec
Above timings show that the Core i7 Quad used in the early 2011 15 and 17 inch MacBook Pro renders the 1:1 previews in less than half the time taken by the 15 MacBook Pro Core 2 Duo. In addition, even with only 4GB of ram the Core i7 Quad is still substantially faster than the Core 2 Duo with 8GB of ram. Both computers were using an internally mounted Hitachi 500GB 7200rpm disk drive. I expect that a comparison between similarly spec’d laptops running Windows Vista 64 or Windows 7 64 will show a similar improvement.
Exporting photos from Lightroom is another aspect that users regularly complain about. So, it’s again worth comparing the three configurations discussed above. This test involved exporting the same 300 Canon 5D MkII raw photos as JPEG at 100% size and 80% quality. However, for this series of test all photos had a wide range of develop adjustments, which included local corrections, graduated filters, noise reduction, and lens corrections.
- MacBook Pro 2.8 GHz Core 2 Duo with 8GB ram = 36 min 26 sec (7.3s)
- MacBook Pro 2.3 GHz Core i7 with 4GB ram = 22 min (4.4s)
- MacBook Pro 2.3 GHz Core i7 with 8GB ram = 16 min (3.2s)
(Figure in brackets is the average time taken to export a single photo.)
So, as with rendering 1:1 previews, it’s clear that the new Core i7 Quad processor enables Lightroom to export photos in less than half the time it takes for the Core 2 Duo.
Obviously, the combination of Quad core technology, hyperthreading and Turbo Boost used by the new Intel Core i7 Sandy Bridge processors accounts for the substantial performance improvement over earlier MacBook Pros. However, to emphasise the magnitude of the improvement it’s worth mentioning that the new 2.3 GHz i7 Quad-core MacBook Pro actually renders 1:1 high quality previews marginally faster than my early 2008 Mac Pro 3.0 GHz 8-core desktop computer, which has 16GB of ram installed. The improvement over the Mac Pro is likely due to the Turbo Boost technology found in the Core i7 Sandy Bridge processors. This technology allows the processor to run faster than the base operating frequency (i.e. 3.4 GHz in lieu of 2.3 GHz) when the processor is operating below it’s specified power and temperature limits.
If you want to read more about the MacBook Quad then I recommend reading the comprehensive review published by Lloyd Chambers at Mac Performance Guide. I love this quote from Lloyd: “In short, if your work depends on a MacBook Pro in terms of speed, ditch your old model, and don’t walk— run and get the 2011 MacBook Pro 2.3 GHz (15″ or 17”).”
At this point you may be asking why I’ve been chattering on about CPUs and ram. What about SSDs? Well, fact is the CPU and ram are effectively the only components that have any significant effect on the time taken to render previews in either the Library or Develop modules, and since this is probably the most time consuming aspect when using Lightroom it would be pretty silly to ignore either when chasing performance improvements. However, with that said, I think it’s time to look at the impact an SSD will or won’t have on performance. To do so I installed a 240 GB OWC Mercury Extreme SSD, which, at time of writing, is reputed to be one of the best around, in place of the supplied 500 GB 7200 rpm disk drive. The disk drive was moved to the slot normally used for the built in optical drive, thus allowing me to use either as the boot drive. In terms of read/write performance the SDD is capable of achieving in excess of 240 MB/sec whereas the disk drive maxes out at around 100 MB/sec.
With the SSD installed it’s time to look at whether an SSD will provide any significant improvement in preview rendering times in the Library. To do so, I ran a series of tests with the Lightroom application, catalog and previews, camera raw cache, and photos all installed on either the SSD, the conventional disk drive or spread across both. Spreading the application, photos and cache files, etc across multiple drives eliminates read/write collisions and reduces the load on the CPU. So, we should see some benefits for configurations that use at least two drives. Also, and as with the test comparing the two MacBook Pros the tests involved importing and rendering high quality 1:1 previews for 300 Canon 5D MkII raw photos. The results of all the speed tests are shown below along with the baseline of everything being installed on the conventional 7200rpm disk drive.
Time* to import and render 1:1 previews for 300 Canon 5D MkII photos
*The total import time was in the order of 6 to 7 seconds, and time in brackets is average time taken to import and render 1:1 preview for each photo.
The key point to note from above results table is that irrespective of where the catalog, previews, cache or photos are stored the difference in overall import and rendering times is relatively small (i.e. 26 sec between fastest and slowest). The normal recommendation is to place the application, Camera Raw cache, catalog and previews on the SSD and photos on the conventional disk drive (3); yet this configuration is only marginally faster than putting everything on a conventional disk drive (5). We can also see that the SSD helped reduce preview rendering times when the photos where located on the SSD (4 and 6). Clearly, storing photo files on the SSD isn’t a realistic proposition when typical storage capacities are factored in, but it’s worth keeping in mind fort he day when larger less expensive SSDs become available.
What happens if it’s not feasible to install two internal drives in the same computer? Typically, most desktop and laptop computers will have ports for connecting external devices such as disk drives. In the case of the MacBook Pro the most commonly means of connecting an external disk drive is to use the Firewire 800 port. The following table shows the results obtained when a Firewire 800 disk drive (G-Drive mobile 500GB) was used in lieu of a second SATA 300 internal disk drive.
Time to render 1:1 previews for 300 Canon 5D MkII photos
Clearly, the performance penalty compared to two internally mounted SATA 300 drives is negligible. So, I think it’s fair to say that any concerns over using an external disk drive via Firewire 800 are probably unfounded. In theory, USB 2.0 should be equally acceptable, but I’ve found that disk drives connected via the USB 2.0 port tend not to perform as well as Firewire 800.
Above discussion relates to the Library module previews. However, the Develop module only uses these previews for a very short period, then loads its own preview from the Camera Raw cache whilst at the same rendering the raw photo in the background. While not well documented, the availability of this cached preview will reduce the overall loading time for a photo in the Develop module, and depending on the actual edit type applied to a photo the magnitude of this reduction can range from fractions of a second per photo to a few seconds. The following results compare how the various locations for the catalog, previews, cache and photos will effect the photo loading time in the Develop module. Again, and as with earlier speed tests, no development adjustments have been applied to any of the photos. This means that the following results reflect the “best case” scenario.
Time to load 300 Canon 5D MkII photos into Develop module
To obtain above times I used a Lightroom script that automatically loads a photo into the Develop module then moves to next photo when “Loading” overlay disappears. Using the script it’s possible to automatically loupe through all selected images or all those within a particular folder. The times shown in brackets is the average time for a photo to be fully rendered in the Develop module. That is, the average time taken for the “Loading” overlay to disappear. As with Library previews, the fastest load times for Develop module occur when everything is stored on the SSD (4), and the slowest load times occur when everything is stored on the conventional disk drive (5). The best compromise between photo load times and storage capacity is configuration 3. That is, the application, catalog, previews and Camera Raw cache are all located on the SSD with photos being stored on the conventional disk drive.
As with Library previews, I repeated some of the tests to see whether an externally connected Firewire 800 disk drive would result in photo load times increasing. The following table shows the results.
From above table it can be seen that the only configuration that showed any marked slowdown in photo load time coincided with everything other than the application being installed on the external drive (1). The other two configurations result in photo load times that are similar to those for internally connected SATA 300 drives.
Develop module – Loading overlay
This leads me on to another poorly documented aspect of the Camera Raw cache. That is, how large the cache needs to be in order that a reasonable number of images can be cached. Typically, the default size of 1GB is way too small to be of any real use with Lightroom 3, and the maximum of 200GB is too much for any SSD. So, what is the ideal size for the cache? Well, as a general rule, I find that 20GB is more than sufficient when working with Lightroom 3 on a laptop and anything up to 100GB on desktop. On the other hand with Lightroom 4 Adobe have switched to using JPEG for the cache files which means that they take up significantly less disk space than they did in Lightroom 3. This means that when using proprietary raw files (e.g. CR2, NEF, etc) 20GB is probably more than sufficient for both laptop and desktop computers. However, if using DNG files saved with Embed Fast Load Data enabled in preferences (Lightroom 4 and higher required) the cache files will be embedded into the actual image file rather than as a separate file. The advantage of Fast Load Data is that the actual cache files don’t take up and space on the drives, meaning that using the SSD for the Camera Raw cache becomes more feasible. So, how and where do we set the Camera Raw cache size?
The following screen shot shows the Lightroom preference panel where we can configure the size and location of the Camera Raw cache.
Camera Raw Cache – Location and Size Settings
So, having established that the use of an SSD offers only marginal improvements to Library preview rendering and photo load times in Develop module where can we realistically see an SSD helping a Lightroom user? Well, Lightroom isn’t just about rendering Library previews or loading photos into the the Develop module editing window. At Lightroom’s heart is a SQLite database, and the very fast access times associated with SSDs means that reading metadata from the catalog, searching the catalog, etc will be noticeably faster than on a conventional disk drive. Likewise, Library module thumbnail and preview scrolling (sometimes referred to as louping) will be noticeably faster and smoother. Other areas where the the use of an SSD will help include application launch times and computer boot time. Overall, installing Lightroom (includes catalog, previews and Camera Raw cache) on an SSD will result in the application feeling more responsive than is the case with a conventional disk drive. However, as the various tests have demonstrated, SSDs are not the magic bullet that some would have you believe.