Fusion 9's OpenCL "Acceleration"

I promised in my initial review of Fusion 9 to do some speed tests. Blackmagic claims that every tool has been rewritten to offer GPU acceleration with OpenCL. Naturally, that's of great interest to pretty much everyone, especially those of us with access to overpowered Titan X cards. Alas, the news is not so good.

Although I can say for certain that almost every tool does, indeed, now run in OpenCL mode, the results of my testing indicate that most of them are now slower. There are a couple of exceptions, and in those cases the improvement is dramatic, but by and large, your comps will probably run faster with OpenCL disabled, regardless of your hardware.

I began my tests with the tools in the Blur category, comparing Fusion 8 and Fusion 9. Generally, Fusion 8 rendered around 30% faster. The notable exceptions were the Directional Blur and Vector Motion Blur nodes, which were up to 10x faster in Fusion 9. Since those have always been among Fusion's slowest tools, the speed-up there is most welcome. If it means everything else is 30% slower, though, the savings are quickly squandered.

Some test comps from Teen Wolf and NCIS showed similar results—in general, Fusion 8 was faster. To eliminate the possibility that there was some other factor in play, I decided to start testing Fusion 9 against itself with varying OCL settings as I moved into the Color tools.

OCL caching is turned off by default. One of the slowest parts of an OCL process is moving images in and out of the GPU's memory. By setting Caching to Full, the image should remain in GPU memory until all of the needed OCL calculations are finished, and only the final image should be moved back into system RAM. Testing showed that Full Caching did indeed speed up the tools significantly; they were up to twice as fast with it on, and as much as 50% faster with it set to Basic. However, the CPU mode still smoked OCL.

In order to sanity check myself, I shared my findings with the beta testers, and at least one reported similar results (if anyone else ran tests, they did not publish the findings).

Hopefully BMD will do some benchmarking of their own to either confirm or dispute my tests, and if it's found that I'm right, they can tune things for better performance. In the meantime, it might be worth setting defaults on most tools to turn OpenCL off (the switch is in the Common Controls tab).

Fusion 9 still needs its shakedown cruise—there are still some unfortunate bugs, and it tends to be a little bit unstable. I am pretty happy with most of the new features, though. I've been using the Delta Keyer in production for the past couple of weeks, and it does a marvelous job. So by no means am I saying don't use Fusion 9. Just don't use it because you're expecting it to be faster than 8.

5 Comments

  1. Hello. 2 days ago Fusion 9 became wicked slow when rendering with Software Rendering (it’s about 20 times slower than it was before, sometimes taking up to 3 minutes to render a single frame). OpenGL Rendering works just fine. I set the OpenCL to full cache as recommended above. I’m not sure what else might be contributing to the apparent bottleneck in the software rendering mode; I haven’t done any upgrades to the software or the system. Any advice you have would be greatly appreciated.

    1. I'm afraid that whatever you're experiencing isn't something I've yet seen. There is a limited amount of help I can offer with regard to performance issues.

      OpenCL isn't likely to be the culprit, at least not directly, because the software renderer by definition doesn't use GPU acceleration. Still, since you did change that setting, you might try setting it back to see if it solves the problem.

      Is this slowdown related to a specific Renderer3D, or is it affecting every scene you make? Sometimes nodes or even entire comps can become corrupted. When that happens, deleting the offending node and making a new one can clear it. If it's a comp-wide problem, try copying all nodes and pasting them into a new comp file.

      It's possible that it's not actually the Renderer that's the problem but something upstream of it (this is assuming the problem is affecting just one comp and isn't systemic). Try disabling sections of your 3d tree to see if it suddenly speeds up more than you would expect.

      If it's a systemic problem, you could try renaming your Fusion preferences file. Fusion will automatically regenerate the file with default settings the next time it starts up. If the problem goes away, then it was a corrupted Prefs file. If not, you can just delete the new one and restore the name of the old one.

      Sometimes reinstalling graphics drivers can fix some problems, especially intermittent or spontaneous ones like this, although since this is an issue with the Software renderer and not the GL one, I doubt that's the case. Still, it's a non-destructive and easily performed option.

  2. I would also point out that the issue could very well be the graphics card: OpenGL and OpenCL are different. Some cards work a lot better with OpenGL. For example, if you're running an nVidia card, OpenGL and CUDA are fast and great, however OpenCL performance on nVidia (even the high end cards) is still subpar.

    If you want strong OpenCL performance, you need to start looking at the AMD RX VEGA 64 cards. AMD's implementation of OpenCL, both hardware and driver, are spade-loads above nVidia at this point. In fact, AMD is now regularly beating CUDA in Blender for this exact reason.

  3. We're pretty well tied to CUDA due to Redshift. I don't think a speed up in comp is worth losing the gigantic 3d gain we've seen by getting off of V-Ray.

    Anyway, even if Nvidia doesn't do OpenCL as well as AMD, it *should* still be better than CPU rendering, but the simple fact is that it's not. I haven't found the time yet to redo these tests in 9.0.1, and I have a feeling that 9.0.2 is not far off, which may bring some additional fixes and optimizations. We'll see.

    If there's anyone with some beefy AMD GPUs who wants to do some benchmarking of their own (anyone with one of those new iMac Pros want to give it a whirl?), I'd be very interested in hearing the results. It's not something I'm going to be able to do any time soon. I'm really not interested enough to spend $700 on the project!

  4. My issue appears to have been corrupted nodes. It isn’t affecting new renders. Thanks for taking the time to address this.

Leave a Reply