GNOME Bugzilla – Bug 427532
Run-time regression testing system
Last modified: 2017-04-08 16:08:26 UTC
A system that allows registering multiple versions of an operation that are peformance/alternate versions of the same algorithm, perhaps for specific pixel formats or using an external renderer like cairo. The regression testing should work similar to the one done in babl, where test output from a couple of random buffers given to both the GEGL floating point reference implementation. The strictness of the match should be adjustable in a manner that makes it possible to allow cairo's 8bit rendering when the conversion can be attributed to a conversion error (which should be possible to estimate with babl). One of the main points of this architecture is to be able to keep the reference implementation of the algorithm readable. During development it should be possible to control which alternate implementation of an operation is in use.
It is now possible to add new processing functions to operations, but the choice of which operation to run is done by the developer specifying the class/quality of the implementation.
OpenCL fits the bill well enough, and some operations choose their format/code path based on pixel format without additional needed infrastructure. Closing this bug as obsolete to improve the overview of open bugs.