Hi Lorenzo,

 

> Did you try Intel C++ Compiler? (It’s free for open source projects on 
> Linux). 

> In some programs I got 2:1 performance improvements. 

 

No, I haven't run that one.  At the moment we have really only one practical 
choice here:  The Microsoft Visual Studio 2017 C++ compiler for Windows, though 
we may be looking into alternatives in the future.  I have heard good things 
about Intel's compiler elsewhere as well.  Thanks for the data point.

 

For what it's worth, looking over Microsoft compiler-generated code, with some 
of the complex routines like multi-input/output interpolation the compiler is 
starved for registers and has to resort to storing intermediate compute 
products in RAM.  Just small things like changing the way loops are managed to 
free up a register here and there make a noticeable difference in throughput, 
especially with e.g., the 32 bit floating point routines, where the channel 
data is 4 bytes each and the process is already quite RAM-bound when 
multi-threaded.

 

It's possible using SSE instructions to facilitate things like doing 4 
calculations simultaneously could speed things up further.  I'm looking into 
that now.

 

-Noel 

 

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Lcms-user mailing list
Lcms-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lcms-user

Reply via email to