Photoshop: GPU computation of brush/smudge/mixer brush tools

  • 1
  • Idea
  • Updated 3 years ago
  • (Edited)
When I do blending and smoothing of colours I often use smudge and mixer brush tool. But those two are sooooo slow sometimes that it is giving me headache. It's ok when you work on single layer and small picture, but when I ramp things up it goes nuts on my computer. I have i5-3350P 16GB of RAM and GTX660 in my PC but if I make document 1920 x 1080 with around 5 layers and I try to use smudge or mixer brush on "all layers" it goes nuts slow. It's like 10 seconds of processing for each stroke I do.
I know I shouldn't use "work on all layers" feature, but I cannot just merge some layers to work only on one - I like to preserve layers and stuff and I like to put things on separate layers. And it's not only "work on all layers" feature. I sometimes work on really big pictures, like 3500 x 2500 or more and even on single layer there I get some "lag" using some tools even with simple brush.
My CPU isn't the best, but that is all I can afford for now and this computer is sometimes also used for some gaming. My GPU is pretty good and with lately technology of GPU processing I started to wonder why adobe haven't put those tools on GPU to be processed? That would probably greatly improve performance of photoshop and would also make computers with multiple GPU cards more viable for artists (it's harder and more expensive to buy computer with multiple CPU's than multiple GPU's).
Another option that could be pretty simple would be lock tool to selected layers only and not only single or all layers. When I do blending I usually take stuff from 2 layers and result is done on 3rd layer. So using 2 layers instead of 10+ would be probably good performance boost.
Oh and let's not forget I have played with photoshop settings around and tried several systems (windows 8.1 mac OS X 10.9) and I only got slight improvement with OS X10.9. I use GPU to aid computing stuff, but it doesn't help much as tools I use are mostly CPU dependant. And yes, I'm using os X 10.9 hackintosh style on my PC (I'm saving for a real mac and I would like to buy once mac pro, but what is the point of having 2 great GPU cards when photoshop won't use them?)
Photo of Matej Pinter

Matej Pinter

  • 12 Posts
  • 0 Reply Likes
  • excited

Posted 5 years ago

  • 1
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 813 Reply Likes
That sounds like you're having some sort of video driver problem causing slow drawing.

Painting doesn't always benefit from the GPU - because each block of computation is relatively small, and constantly changing.

Photoshop does use the GPU to display your image and for many other things where it makes sense and can actually accelerate the computation.
Photo of Matej Pinter

Matej Pinter

  • 12 Posts
  • 0 Reply Likes
I don't know what is wrong, but here is a proof and screenshots of dxdiag and settings...





And a link to video me using smudge tool.
1920 x 1080 pic, 6 layers and "lag" is obvious... Also if you watch video to the end you can see the proof, that CPU utilizations doesn't go over 50%, but photoshop uses all 4 cores. That is indeed very very strange....

https://www.youtube.com/watch?v=IuxEQd...
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 812 Reply Likes
The CPU utilization is pretty typical -- the brush work and blending can use all the cores, but UI work can't, and screen updates usually don't use multiple cores (depends on the driver code and OS).
Photo of Matej Pinter

Matej Pinter

  • 12 Posts
  • 0 Reply Likes
Funny thing is that under OS X 10.9 my CPU is 100% used. But still, smudge and mixer brush are very slow and sometimes even normal brush can't keep up with me. Any ideas why those would be so slow?
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 812 Reply Likes
Could be a video driver issue (they were changed in 10.9), or it could be something slowing down the system (utilities, spotlight indexing, etc.). Adobe Drive has also had some issues on 10.9 that cause slowdowns.
Photo of Matej Pinter

Matej Pinter

  • 12 Posts
  • 0 Reply Likes
I think it must be something more than just driver. This things work slow on both systems, mac and windows. It's just that on mac I get slightly better performance and better CPU utilization.
I have read on adobe forums that several other people had same problem, slow "laggy" brushes, smudge tool being almost unusable and mixer brush right behind it.
I have newest drivers on all systems and nothing I change in settings helps. I'm out of ideas and it seems that even new super fast computer wouldn't help here. Maybe you can try replicate same thing as I did in my video and if it is not only my machine being so slow then it's probably fault somewhere in photoshop. I would really really like to get to the bottom of this as this is making my work very slow and I sometimes need to use other programs to do some stuff as I don'g get so much lag there...
Photo of Matej Pinter

Matej Pinter

  • 12 Posts
  • 0 Reply Likes
No ideas what could be wrong? :(

Now I don't know what to think now. I'm having this lag since I start using photoshop and I thought that my computer is too slow to handle it, but now I' just lost here... help :(
Photo of Matej Pinter

Matej Pinter

  • 12 Posts
  • 0 Reply Likes
Now I have discovered something interesting!

I have tried Pixelmator program with same settings as in photoshop. I tried smudge tool and it seems as everything works much smoother than photoshop CS6. Then I have tried same thing in photoshop CC and as it seems CS6 is pretty slow.

So to sum up: CS6 is almost useless for me to work with as everything lags. CC is a little better, but still some fast strokes and it slows down to crawl. But then Pixelmator just work instantly no matter whow fast I move my hand over my cintiq. It looks like pixelmator have every tool running under openCL which improves speed drastically!

I hope brush tools, mixer brush and smudge gets openCL implementation soon.
Photo of jeremy zucker

jeremy zucker

  • 5 Posts
  • 0 Reply Likes
NO, it's not a video driver problem. It's a universally recognized problem and apparently the feature is not popular enough for adobe to fix it. If you are editing pictures that are 21mp (for example canon 5d II files - 5,616 Ă— 3,744) and you use even a medium size mixer brush with bristles and have "all layers" checked, you will have severe performance lag.

I can demonstrate this on multiple computers. my main computer is an i7 3820, 32gb memory, 500gb SSD, 8TB of additional storage. I have demonstrated this performance issue on iMac and other machines.

The smudge tool does not have the same issue but then again, you can't use the natural brushes with the smudge tool, nor does it have the mix/wet/dry options.

OTOH, doing the same thing with Corel Painter's mixer brushes and painting all layers has absolutely ZERO performance lag. And it's because that is Corel Painter's main feature so they optimized it.
Photo of eartho

eartho

  • 797 Posts
  • 194 Reply Likes
sorry Chris, but the mixer brush is a huge hog and lags like crazy. I use it nearly every day in my retouching workflow and any brush bigger than 200px will be about 1-5 seconds behind your strokes.

While we're on the subject, would it be possible to add the normal "current and below, etc" options to the Mixer?
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 812 Reply Likes
Write a separate request for the "current and below" option (Is there already one? I think I've seen that request before.)

The mixer brush (like Smudge) does a lot of work, and will be slower on larger brushes. Unfortunately much of that work is limited by DRAM bandwidth, so the GPU would just slow it down further.
Photo of jeremy zucker

jeremy zucker

  • 5 Posts
  • 0 Reply Likes
As I mentioned, I have 32GB of ram and a 512GB SSD. The same test I mentioned works fine with the smudge tool in "all layers" mode but not on the mixer brush. It's well known in the industry that the mixer brush is a resource hog.
Photo of jeremy zucker

jeremy zucker

  • 5 Posts
  • 0 Reply Likes
and again, you ignore the fact that corel painter in the same test outperforms photoshop by far. It's probably the *ONLY* area that painter outperforms photoshop but clearly they have optimized this one particular algorithm whereas adobe is catering to a different audience for their primary targets of optimization. Hence the focus on filters and the warp tool, among others.

Since you are so emphatic about this, duplicate my test and post a video along with your computer specs.
Photo of Chris Cox

Chris Cox

  • 20280 Posts
  • 812 Reply Likes
I'm not ignoring anything. Painter does less work in their brush, so it may be faster. "well known" to you, but that problem is not well known to others -- and there have only been a handful of complaints about the speed of the mixer brush, usually at very large brush sizes.