Hi!<br><br>First, thanks everyone who helped me with running the composition benchmark on their machines! Now I have some important information about what we should do next with these optimizations!<br><br>In the first attached document you can find a table, comparing the results on various architectures.<br>
<br>Here are conclusions I came to:<br><br>1) On some architectures, e.g. non-Intel, the usage of Vc may degrade the performance, so Krita should have some automatic benchmarking capabilities (in settings dialog, for example), which would select the best available implementation of the composite op. Such benchmark might be executed on the first run of Krita and its result might be written to a Krita config file.<br>
<br>2) Some old processors (Nehalem, Merom) have some problems when one of the pixels (src or dst) have alpha channel set to 255. I can't explain right now why this happens. Probably, there is some branch misprediction... The rest of the cases on these CPUs are handled properly.<br>
<br>So in general, I think these two problems should be solved and after that the branch can be merged into master.<br><br clear="all"><br>-- <br>Dmitry Kazakov<br>