Adobe CS5: 64-bit, CUDA-Accelerated, And Threaded Performance

Photoshop CS5: CUDA

Maddeningly, Photoshop CS5 still does not support any native CUDA-accelerated functions, leaving us in the same boat as After Effects...until we realized that some plug-ins for Photoshop actually use CUDA. Sweet! When we found Digital Anarchy’s Beauty Box Photo plug-in, it was love at first sight.

The skin smoothing tool is subtle but freaking awesome in its ability to convincingly wipe years off of portrait subjects with only a few clicks. Not surprisingly, such post-processing takes a fair bit of work, and we decided to push Photoshop to exhaustion by throwing a massive 29 000 x 14 577 portrait at it.

Based on our prior testing work with CUDA, these charts shouldn’t come as a surprise, but we never get tired of gaping at the benefits of a solid GPGPU implementation. Without CUDA, we again see a 5% to 10% performance hit from enabling Hyper-Threading, and the jump from two cores to four shows much greater gains than from four to six. Turn on CUDA, though, and nothing else matters. Our job finishes right around three minutes regardless of HT or core counts. Without CUDA, the best Photoshop can manage is 12 minutes. The difference is like night and day.

Without CUDA, CPU utilization remains high, gaining only a little breathing room as core counts increase. Despite impairing performance somewhat, Hyper-Threading does help lower the floor on utilization and bring down average CPU load.

With CUDA, our benchmarking times may not change, but CPU utilization plummets. This would indicate that the GPU could now be the bottleneck and the load that’s left for the CPU is now being shared among more cores, dropping the average utilization. This is important to note if you need to run other apps alongside a batched Photoshop work load, for instance.

Note that there is CUDA support for encode acceleration under Photoshop CS4, but it requires purchasing the Elemental plug-in and will only work if you’re running a compatible Quadro card. Unlike the text file hack we detailed earlier, there is no simple work-around to get past the Quadro requirement for CS4.

  • reprotected
    Fermi exceeds at something finally!
    What if I am an ATI user?.
    And Iam an ATI user !!!.
  • IzzyCraft
    magpcWhat if I am an ATI user?.And Iam an ATI user !!!.You still get gpu acceleration just not as much =p and it would be a ATI listed on their site just like nvidia it's a limited pool.
  • bunnyblaster
    Please increase the size of the legend. It is easy to figure out in this review since it's only two colors, however, if it is more than 2, it is hard to figure out which bar is referring to which score.

    Please consider changing the page drop-down menu to the old school drop-down menus like the other tech blogs like Anandtech and Arstech, etc.

    The interface is a little clumsy and seems to be poorly timed when I try to scroll down the drop-down menu. It often closes when I am trying to scroll to another page. Sometimes, when the page loads, it is hidden by a pop-up word ad.

    However, the article content was strong.
  • dEAne
    I have an ATI card and still I have no problem using photoshop CS4 and premiere CS4. The thing with CS5 is that if you can't wait at all, but it is not that really long.
  • adiomari
    why cuda and not open-cl?!!
  • shaun_shaun
    amazing performance increase !!!!!
  • Scott2010au
    Surely they mean the 2GB memory limit (for Win32 processes)?

    Which is one reason why the Apple Mac version is so popular (Unix/BSD can handle more per process).
  • Why CUDA? Simply 'cause it's a mature technology.
  • amdfangirl
    adiomariwhy cuda and not open-cl?!!
    CUDA preceded Open-Cl. Dev cycles are long and tedious. If you're going to implement something, it'll take time to show up. I honestly hope more developers decide to code for Open Cl.