[Gimp-developer] Babl claim about being faster than lcms2




Hello guys,

This is Marti Maria, LittleCMS author. LittleCMS is the library you are using for color management. 

Couple of days go, a friend of mine bring my attention on a comment in GIMP  release notes:

"GIMP now uses LittleCMS v2, which allows it to use ICC v4 color profiles. It also partially relies on the 
babl library for handling color transforms, since babl is simply up to 10 times faster than LCMS2 for the 
cases we tested both of them on. Eventually babl could replace LittleCMS in GIMP.”

Ouch, this like saying lcms2 is such slow that is inoperant and that babl guys can do it  way better. Ok, 
that’s fine for me if true, but then I would like to apply the Sagan aphorism: "extraordinary claims require 
extraordinary evidence”

So I have done some testing and created this entry on lcms2 website:

 http://littlecms.com/blog/2019/10/02/througput-babl/ <http://littlecms.com/blog/2019/10/02/througput-babl/>

Which basically proves that the claim is not true and that lcms2 is clearly faster that babl on most 
operations. And for those very few cases, like floating point, that is not such fast, you have a plug-in 
under GPL3 that makes lcms2 shine in throughput and go way faster than babl.

GPL3 gives you the freedom of using the plug-in for free, and the GIMP is a great software that clearly can 
use this license scheme. Activating it is a matter of adding one line of code and the plug-in files. I can 
help if wish so, just let me know.

I would not enter on the question of the very limited subset of profiles that babl supports, the issue is the 
complex architecture you are forced to use (detect if a profile is suitable and then make color transforms 
take a different path) because the  claim lcms2 is slow. And this claim, in my tests which you are welcome to 
review, is not true.

Best regards, keep on that good GIMP work
Marti Maria
The LittleCMS project
http://www.littlecms.com <http://www.littlecms.com/>




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]