Basic GPU-side rendering and processing in GIMP available

Basic GPU-side rendering and processing in GIMP available

Back in November we reported that Victor Oliveira got a contract with AMD to implement a basic working GPU-side processing in GIMP based on GEGL. Today Victor has some results to share.

As a former Google Summer of Code 2011 student for GIMP/GEGL organizations who worked on OpenCL-driven support for GPU-side processing of images Victor was a perfect fit for the project.

Soon after the initial announcement all the work was moved to Github, and with the current snapshot of modified GEGL and a regular unstable version of GIMP you already can load an image to GPU and apply brightness/contrast GEGL operation on GPU.

For that you need:

Once you have them, all you have to do is to enable GEGL-based projection in GIMP 2.7.x and, at your choice, either use regular Brightness-Contrast tool with the “Use GEGL” checkbox enabled in the Color menu, or apply this operation with the experimental GEGL operation tool. The project is currently missing ready to use builds, but let's see if is going to take care of that.

The OpenCL-based brightness/contrast operation is currently ca. 8 times faster than the non-accelerated version in regular GEGL. Victor reports that even more speedups are possible, if you consider a chain of operators running on the GPU.

What's more important is that there already is an infrastructure for point operations such as compositing and filters, so adding more features on top of that should be possible now. You can also do some common color conversions on the GPU (though not between color spaces such as LAB and XYZ yet).

There still are some basic things missing such as a way to share data in the GPU between operators which is what Victor is currently working on. Besides, some specifics of how GEGL works need to be revisited.

GPU-based rendering and processing is probably one of the most exciting latest GIMP related projects. It is certainly going to have a huge impact on your workflows.

Was it useful? There's more:

5 Responses. Comments closed for this entry.

  1. Kevin Brubeck Unhammer 01 February 2012 at 5:55 pm


  2. Okay, A lot of new stuff is coming to Gimp, only my patients is killing me. 2.8 where are you….....;)

  3. Has been a long wait, but sure it will worth it! :)

  4. Really cool to hear about. I have some large images where a gpu speedup could be very useful.

    Are there any indications of how much of gimp we could expect gpu acceleration to be compatible with?

  5. Alexandre Prokoudine 11 February 2012 at 9:50 am

    Stefan, I don’t think it’s possible to say at this point exactly how many things can be safely done on GPU. But rendering, compositing, color grading and filters are doable.