Article Thumbnail

Adobe Photoshop CC Multi Core Performance

Written on April 20, 2015 by Matt Bach
Share:
Table of Contents:
  1. Introduction
  2. Test Setup
  3. Hardware Heaven Multi-threading Results
  4. Speed Test Multi-threading Results
  5. Multiple CPU Performance
  6. Conclusion
  7. Related Articles

Introduction

When designing a computer there are literally thousands of different hardware components from which you can choose. Each one will affect the performance of your system in different ways and depending on the software you will be using some will be more important than others. In the case of Adobe Photoshop CC, one of the most critical hardware components is the CPU. Even then, there are still hundreds of different CPU models to choose from and each have their own unique specifications.

So the question is: how do you know which CPU will give you the best performance in Photoshop CC?

Before even attempting to answer this question, it is important to understand the two most basic CPU specifications:

  1. The frequency is how many operations a single CPU core can complete in a second (how fast it is).
  2. The number of cores is how many physical cores there are within a CPU (how many operations it can run simultaneously).

In an ideal world a CPU that has the same frequency but twice the number of cores would be exactly twice as fast. Unfortunately, making software utilize multiple cores (and do so effectively) is difficult in most situations, and almost impossible in others. Add in the fact that higher core count CPUs tend to have lower operating frequencies and it becomes even more difficult to ensure that you are choosing the best possible CPU.

In this article, we want to find out how well Photoshop CC can utilize multiple cores - known as multi-threading - to help determine what type of CPU (either one with a high frequency or a high core count) will give you the best possible performance. If you want to skip over our testing procedure and individual benchmark results and simply view our conclusions, feel free to jump ahead to the conclusion section.

Test Setup

To help us determine how many cores Photoshop CC is able to use in a variety of situations, we based the majority of our testing around two benchmarks: Hardware Heaven's now-discontinued Photoshop benchmark and ClubofOne's Photoshop Speed Test. However, since we want to determine what actions in Photoshop are multi-threaded and not just benchmark the performance of our system, we had to make a few changes to the benchmark scripts.

First, for both benchmarks we dramatically increased the test image size. We increased the Hardware Heaven's test image to 500MB and the Speed Test's image to 2GB. This was done so that the various actions we will be recording would take long enough for us to get accurate results. Second, we added "stop" actions to the Speed Test action list which will allow us to accurately measure CPU core loads and to time how long it took for Photoshop to perform each individual action rather than the entire group of actions.

In order to have a large amount of CPU cores available, we used the following hardware:

Since we want to determine how many CPU cores Photoshop can effectively utilize, we are going to alter how many cores are available by setting the affinity for Photoshop in Task Manager. This way we can accurately benchmark Photoshop with anywhere from a single core to the full ten cores available with this setup.

To analyze the data, we will be presenting our results in terms of how long it took an action to complete compared to how long it took with only a single CPU core. This should give us a clear indication of how many CPU cores each action is able to effectively utilize.

Hardware Heaven Multi-threading Results

The Hardware Heaven Photoshop benchmark is no longer active, but still works great as a basis for our testing as it includes many popular effects such as image resize and rotation, various blurs and a number of other miscellaneous effects. The major change we made to this benchmark was to increase the test image size to 500MB in order to increase the accuracy of our measurements.

Photoshop Image Benchmark

Starting with image rotation, we saw a decent increase in performance going from one core to two and increasingly smaller increases all the way up to five CPU cores. Resizing the image, however, was really only able to effectively use one or two CPU core.

Photoshop Blur Benchmark

Blurs are one of the few effects in Photoshop that are actually capable of using a high number of CPU cores. Not all blurs are multi-threaded (for example, Smart blur can only use one core), but many blurs will actively load every CPU core you make available to Photoshop. However, even though Photoshop is actively loading all the cores, there is a steep drop-off in performance benefits. In fact, none of the blurs we tested showed any benefit to having more than 5 CPU cores.

Photoshop Benchmark

For all the miscellaneous effects included in the Hardware Heaven benchmark script, most only ever used a single CPU core. The lighting effect is the only one that used more cores, and even then there was only a miniscule increase in performance with two CPU cores available.

Speed Test Multi-threading Results

Our second benchmark is based on Photoshop Speed Test. For this benchmark, we again increased the test image size (this time to 2GB since the effects tested are all relatively quick) and also added short pauses between each action so that we could time individual actions. Normally Speed Test is intended to measure how long it takes to complete everything in the script, but for this article we are more interested in each action independantly.

Photoshop Image resize benchmark

Interestingly, we found that resizing the image was able to utilize up to three CPU cores. This is different than the Hardware Heaven benchmark where we only say a single CPU core being utilized effectively. The only other action that showed the benefit of having more than a single CPU core was changing the canvas size which was able to utilize two CPU cores.

Photoshop filters benchmark

The unsharp mask and gaussian blur portions of Speed Test showed that both effects are capable of multi-threading. However, unsharp mask peaks after about six cores and gaussian blur sees diminishing returns after about five cores. 

Photoshop color mode benchmark

Of all the effects we tested, converting to different color modes showed the greatest benefit of having multiple CPU cores. With ten CPU cores we saw up to a six fold increase in performance. That's not perfect, but it is actually pretty decent in terms of multi-threading efficiency. 

Photoshop adjustments benchmark

The final portion of our Speed Test benchmark run involved a number of image adjustments including level, hue/saturation, and brightness/contrast. Hue/saturation actually benefited pretty well from having a high core count, although it leveled off around seven CPU cores.

Multiple CPU Performance

So far, we've only looked at how well Photoshop is able to utilize ten cores on a single CPU. So far, we have seen no indication that Photoshop should be able to utilize larger numbers of cores through the use of a Dual Xeon system with two CPUs but we felt we needed to test it just in case we see an unexpected result. Two CPUs does mean twice the memory bandwidth since only half the RAM is on each CPU so it is possible that we may see higher performance with two CPUs.

For this section, we used the following test system in addition to the X99 system that was used in the rest of this article:

To see if multiple CPUs help, we compared the Hardware Heaven results from our X99 system to three different CPU configurations on our Dual Xeon system:

  • Single CPU only (second CPU physically removed from the motherboard)
  • Dual CPU, but affinity set to only allow Photoshop to utilize the cores on the primary CPU
  • Dual CPU, no limitations set

This should give us a clear indication of how well Photoshop works with our Dual Xeon system and allow us to detect any odd performance issues. Unlike the rest of our results in this article, we will not examine the result in terms of x times single core performance but rather of the raw time in seconds to complete each action:

Photoshop Multiple CPU Benchmark - Blurs

Blurs were one of the best effects for multi-threading in the Hardware Heaven benchmark (with the exception of Smart Blur) so they should have the best chance of showing a performance benefit from having two CPUs. However, if you examine the results you will see that this is not at all the case. We performed multiple rounds of testing, even to the point of completely reloading the OS and replacing hardware but the results never changed significantly. Instead of improving performance, adding a second CPU actually increased the time it took to apply a blur effect by 30-50% 

What is interesting is that with only a single CPU installed into the Dual Xeon system, performance was almost identical to the X99 system which effectively rules out an issue between Photoshop and the hardware we used for our testing. However, once we adding the second CPU performance decreased by about 20-35% for the Field, Iris, and Tilt-shift blur. Setting Photoshop to only utilize the primary CPU helped, but still resulted in a performance decrease of about 10-16% for those same blurs.

Luckily, this drop in performance appears to be limited to the few effects that attempt to utilize a large number of cores. The majority of Photoshop actions showed no difference in performance with the Dual Xeon system:

Photoshop Multiple CPU Benchmark

Considering that having two CPUs technically gives you twice the computing power (and twice the memory bandwidth), it is very disappointing that you will actually see lower performance in Photoshop with two CPUs than you would see with just a single CPU. Why this is the case is a completely mystery to us. We have reached out to Adobe to see if we could get an answer, but so far have not had any luck discovering why there is such a drastic drop in performance. Our best guess is that since Photoshop does not utilize large numbers of cores very efficiently, having to go over the QPI link (which essentially connects both CPUs together) adds enough of a performance hit to completely offset any performance gained by having more CPU cores available.
 
The good news is that this drop in performance only applies to actions that are highly multi-threaded. Single or lightly threaded actions (which are the vast majority of Photoshop) appear to be completely unaffected.

Conclusion

Based on our testing, there are three major conclusions we can come to regarding the multi-threading capabilities of Photoshop CC:

  1. Photoshop does not work well with multiple physical CPUs. Most effects are not impacted, but anything that is highly multi-threaded (like many blurs) will actually take up to 30-50% longer if you have two CPUs versus just one. If you have a system with multiple CPUs, we highly recommend setting the affinity of Photoshop so that it will only ever try to use one of your CPUs.
  2. Most actions in Photoshop are either single threaded or lightly threaded. This means that you will get the exact same performance whether your system has two CPU cores or twenty CPU cores. For these actions, a CPU with a high operating frequency is key.
  3. Multi-threaded actions hit a point of diminishing returns after around 6 CPU cores, and most completely stop improving after 8 CPU cores. This includes effects like color mode conversion, many blurs, hue/saturation, brightness/contrast, and shadow/highlight. The best multi-threaded effect (converting to Lab Color mode) had a decent multi-threading efficiency of about 94%, but most of these effects had an efficiency closer to 80% which isn't so great.

One thing we want to point out is that the raw number of cores different Photoshop effects can utilize is only a starting point when choosing a CPU for Photoshop. Even though Photoshop may at times be able to use eight or even ten physical CPU cores, our testing has shown that it doesn't typically do so very effectively. Because higher core CPUs also tend to have lower operating frequencies, this means that the best CPU for Photoshop will be one with a moderate core count but a high operating frequency.

After examining the results of our testing, we believe that - of the Intel CPUs available at the time of this article - the following three models should give you the best possible performance in Photoshop CC:

Which CPU you choose is going to depend on a number of factors including which chipset you want to use and how much system RAM you need. The Intel Core i7 4790K is a great CPU and probably the overall best of the three, but the chipset it uses is limited to 32GB of RAM which may not be adequate if you work with very large images. For large images, the Intel Core i7 5930K will allow up to 64GB with current technology while the Intel Xeon E5-1650 V3 will let you use up to 768GB of RAM through the use of Registered ECC memory. The 5930K and E5-1650 V3 will both be a bit slower than the 4790K for most Photoshop tasks, but if you need more RAM the performance of the 4790K will be more than offset by not needing to use a scratch drive.

One last thing we want to point out is that our testing only covered the base features that come with Photoshop CC. If you regularly use a third party plug-in our testing may not be accurate. In our experience plug-ins tend to be almost entirely single-threaded (just like Photoshop itself), but there is the chance that a plug-in may benefit from having a large number of cores.

If you are configuring a system for Photoshop CC, we recommend also reading our other articles regarding the hardware requirements for Photoshop: We also have a number of recommended systems for Adobe Photoshop that uses the results of these articles to ensure that each system uses only the best possible hardware for Photoshop:

Tags: Photoshop, Hardware, Multi-threading
Alexandros Makris

Quite informative article as usual. However, I would like to see an AMD recommendation (CPU & GPU). Not everyone has the budget for an Intel/Nvidia combination. In my country, at the price of an i7 4970k I can buy both CPU & GPU from AMD and instead of a GTX 900 series or even a mid level GTX 700, 16GB @ 1866MHz of RAM.
Photoshop, no matter how popular it might be, it is a photo manipulation software not a video editing application. So, why spending so much just for editing photos & using almost exclusively Photoshop on your computer. Just a thought.

Posted on 2015-04-23 07:59:21
Tamás Márton Klein

The problem is that AMD's single threaded performance is plain weak. see:
http://www.cpubenchmark.net/si...
But if you can live with the 32GB memory limit then i believe that i3's might be an option to consider. And i would love to see tests on CPU's like the i3-4170 or even The Pentium G3470.
Work is work. Video editing is not "higher" work than photo editing.

Posted on 2016-04-14 04:48:33
DeeEcks

I'd rather get a Haswell/Skylake i3 compared to a fx-6300 or fx-8350 due to significantly higher IPC. Or better yet used Sandy/Ivy i5-i7.

Posted on 2016-05-21 16:11:31

Thanks for the test!
Sadly Surface Blur was not tested, it is very slow with big 16 bit images, but looks like
for RAW conversion Lightroom 6(ACR 9 ?) is using all cores from the i7-5960X.
http://www.tested.com/tech/pho...

Posted on 2015-04-27 02:57:42
Bearmann

It would be great if you could test Photoshop stitching of say 10 images to see if multiple cores helps with this task. HDR assembly would also be interesting.

Posted on 2015-04-27 20:37:15
Rafael Luik

I don't get it, if the number of cores mostly doesn't matter for Photoshop why did you proceeded to recommend i7s and Xeon instead of an i5?

Posted on 2015-05-18 06:30:37

Higher clock speed, in the case of the Core i7 4790K (4GHz vs 3.5GHz as the top Core i5 speed). Both of those are limited in terms of memory, though, so if you need to go above 32GB - if you are dealing with image sizes greater than 1GB, basically - then moving to a Xeon E5 allows use of hundreds of GBs of memory.

Posted on 2015-05-18 06:32:53

Great article, thanks! Now I'm curious to see what impact would have a GPU on top of that, Adobe having insisted quite much on it for the 2015 release.

Posted on 2015-08-04 19:08:56

We tested GPU acceleration a few years back (https://www.pugetsystems.com/l... and while that article is a bit dated, we didn't see much improvement in performance once you got to a mid-range GPU. I'm sure things are slightly different now, but I would be extremely surprised if there was a significant performance advantage to using above a GTX 960 on the latest version of Photoshop. It is on our list to do a followup GPU acceleration article, though, so keep an eye out for that article.

Posted on 2015-08-04 19:52:07
Isa Santos

Can hyper-threading decrease performance in Photoshop? As in slowing down actions?
Is there any chance you guys could run these tests with hyper-threading enabled and unabled using the i7-4790k and/or the i7-6700k and comparing them to their i5 brothers, the i5-4690k and the i5-6600k?
I'll be building a new PC soon and I'm trying to choose which CPU would be better for my type of use - I plan to use programs like Photoshop, Manga Studio 5, Sketchbook Pro, Corel Painter.

Posted on 2015-08-10 22:27:06

I've never seen any indication of Hyperthreading slowing down Photoshop, and the great thing is that you can always turn it off (in the BIOS) if you think it is causing an issue. Even with that factored in, though, the higher clock speed on the Core i7 chips *will* be better... and the newer 6000-series CPUs also perform a bit better than the previous generation. Since the 6000-series also allow use of faster memory (DDR4) and potentially higher amounts of memory (when 16GB modules come out) I cannot recommend anything but the i7 6700K from your list of options.

Posted on 2015-08-10 22:33:37
bobdammit

I think I just screwed myself. I built a massive PC to edit 4k video and cut down my HDR photography time and Photoshop crawls for me. I've been using Photoshop for about 12 years now. Here's my rig I built:
Supermicro X10DAX motherboard
Dual Xeon 2620 v.3 processors (12 cores total)
Dual GeForce 980 GTX's
64 Gb Kingston DDR4 ECC RAM (4x16Gb)
512 Gb SSD for the OS
4 x 2Tb HDD in RAID 5
1375 watt power supply
31" LG 31MU97 monitor (4096x2160)
Windows 8.1 Pro

My quad core, 8Gb laptop has better performance with Photoshop. I'm having lots of issues with my new build. When I'm using the wide angle adaptive correction feature it tears, takes forever to update and the cursor does not display to the right correctly.

All off this being said... If I installed Linux on my Raid 5 disk and did a dual boot, do you think it would help? I can render 6.5 minutes of cinematic 4k video in less than an hour with this new build. My benchmarks are off the charts. Would Linux make a big difference?
Thanks in advance!
Bob

Posted on 2016-02-22 20:04:53

Linux shouldn't make much of a difference unless you are using different applications in addition to changing the OS. The problem I see with your configuration is the Dual Xeon E5-2620 V3 CPUs. They are an OK choice for video editing (although you may get better performance for your dollar with a different CPU choice depending on the software you are using). However, Photoshop is almost entirely single-threaded so the 2.4GHz frequency of those CPUs is going to be very poor for Photoshop.

To stay within a similar budget, there really isn't any dual CPU option that will give you good performance for both video editing and Photoshop. Moving to a pair of Xeon E5-2623 V3 (Quad Core, 3.0GHz) is probably your best bet since it would give you a bit better Photoshop performance and very similar performance when video editing. Depending on the specs of your laptop, however, it may still be slower than the laptop.

Really, a better system for you is probably a single Xeon E5-1650 V3 (six core, 3.7GHz) rather than dual E5-2620 V3 CPUs. I don't know what video editing program you are using, but if you are using Premiere (other programs are likely similar, but that is one we have tested extensively), we found that there is a pretty dramatic drop in performance after 5-6 cores (https://www.pugetsystems.com/l... so the extra cores at a lower frequency are not doing a lot for you. In fact, based on our testing a single E5-1650 V3 should be ~2-8% faster than what you have right now as well as being cheaper and not as complex (which is much better for reliability and general system bugs). For other programs the E5-2620 V3 may be faster than the E5-1650 V3 - it just depends on how well the program handles multiple CPU cores.

Mainly, the E5-1650 V3 would also be much, much better for Photoshop while being either similar or possibly even better for video editing depending on the software. It still wouldn't be as good for Photoshop as a CPU like a Core i7 6700K (four core, 4.0GHz), but it would be a pretty good balance between video editing and Photoshop.

With all of this said, Linux shouldn't make a big difference. Also, things like the cursor not displaying sounds like you may have a driver or other hardware issue completely separate from your OS and hardware choice that you may want to look into before you start making drastic changes.

Posted on 2016-02-22 20:53:07
bobdammit

Thanks a ton for this info. I'm waiting on a callback from tier 2 Adobe tech support. It sounds like I've got to swap out my mobo, processors and RAM. $1800 worth of parts I spent. Hopefully, I can get $1100 for them, which will get my new components including that 6700. I'd imagine that processor, dual 980 GTXs and 64Gb of RAM should still be good for editing 4K video.
Thanks, again!

Posted on 2016-02-23 16:42:32
godisafairytale

Hi bobdammit, how did it go since your last post? I don't know if you've already purchased the new parts, but if not, save yourself some money and skip the second GTX 980. I did some research on this and [unfortunately] it seems like multiple GPUs are useless for video editing. Premiere and similar software cannot take advantage of the second one, and in fact, one article I saw said it actually can create more issues because of the SLI drivers. You'd likely be better off investing that money into a more powerful single GPU with more CUDA cores like the 980 Ti or Titan, or even wait for the new Nvidia GPUs coming out in May or June (GTX 1080 and Titan). You may want to research this, and maybe ask Adobe as well.

Now if you're also playing games on this machine, you will certainly see a massive improvement using two GPUs, which is what that technology was build for; if that's the case, please ignore my ramblings.

Posted on 2016-04-06 04:50:54
Mashiur Rahman

Thanks.

Posted on 2016-02-27 20:25:45
wiso

I tried Lens Blur under Photoshop CC 14.2 on a 64Mpixel image, processing time was 7.5 min 1core, 4 min 2 cores, 2.3 min 4 cores.

So the first conclusion in your review appears incorrect (or you have done test in special context, donno) : Photoshop does not work well with multiple physical CPUs

Posted on 2016-04-17 16:37:21