2.2. GEGL port, high bit depth support, multi-threading, and more

The ultimate goal for v2.10 was completing the port to GEGL image processing library, started with v2.6 when we introduced optional use of GEGL for color tools and an experimental GEGL tool, and continued with v2.8 where we added GEGL-based projection of layers.

Now GIMP uses GEGL for all tile management and builds an acyclic graph for every project. This is a prerequisite for adding non-destructive editing planned for v3.2.

There are many benefits from using GEGL, and some of them you can already enjoy in GIMP 2.10.

High bit depth support allows processing images with up to 32-bit per color channel precision and open/export PSD, TIFF, PNG, EXR, and RGBE files in their native fidelity. Additionally, FITS images can be opened with up to 64-bit per channel precision.

Multi-threading allows making use of multiple cores for processing. Not all features in GIMP make use of that, it's something we intend to work on further. A point of interest is that multi-threading happens through GEGL processing, but also in core GIMP itself, for instance to separate painting from display code.

GPU-side processing is still optional, but available for systems with stable OpenCL drivers.

You can find configuration options for multi-threading and hardware acceleration in EditPreferencesSystem Resources.

Contributors: Michael Natterer, Øyvind Kolås, Ell, Jehan Pagès…