vulcan


CGI coffee

Blender 3.0 Removes OpenCL as Cycles GPU Rendering API

Sad news for the open-source and open-standards community coming from the Blender team:

OpenCL rendering support was removed. The combination of the limited Cycles kernel implementation, driver bugs, and stalled OpenCL standard has made maintenance too difficult. We are working with hardware vendors to bring back GPU rendering support on AMD and Intel GPUs, using others APIs.

At the same time CUDA implementation saw noticeable improvements in large part thanks to the better utulization of NVIDIA's own OptiX library:

  • Rendering of hair as 3D curves (instead of ribbons) is significantly faster, by using the native OptiX curve support
  • OptiX kernel compilation time was significantly reduced.
  • Baking now supports hardware ray-tracing with OptiX.

So NVIDIA wins... TWICE:

GPU kernels and scheduling have been rewritten for better performance, with rendering often between 2-7x faster in real-world scenes.

Why Am I Not Celebrating This?

All of this once again displays the real world difficulties of developing, maintaining and promoting open-source alternatives to commercial Software designed by the manufacturer to utilize the hardware capabilities of their products to the max.

And the end result? We're falling deeper and deeper into the vendor lock trap and as the vendors keep turning their proprietary hardware-interfacing Software and APIs into state-of-art ready-to-use solutions, those which are developed in a "democratic" environment keep tripping over their shoelaces failing to get any traction on the market they set out to provide the alternative on.

This makes me grateful that there do exist open-source APIs that work, like OpenGL and Vulcan. But... Why are we still in a situation where Vulcan, "the next generation graphics and compute API" is still incapable of providing even the same level of functionality as the dreaded OpenCL so that it could finally offer a real alternative to commercial compute APIs? Why didn't Blender team even mention Vulcan as something they would look into as an alternative to OpenCL?

A million dollar question...