On Wed, 31 Mar 2021 21:31:43 GMT, Sergey Bylokhov <s...@openjdk.org> wrote:

>> The lcms 2.8 version added support for the cmsFLAGS_COPY_ALPHA flag:
>> https://sourceforge.net/p/lcms/mailman/lcms-user/thread/001c01d1c0f3%2484a7cb30%248df76190%24%40ProDigitalSoftware.com/#msg35143398
>> 
>> which supports alpha channel transportation
>> 
>> For our usage, it means we can use TYPE_4BYTE_ABGR and TYPE_INT_ARGB 
>> directly as a source and destination.
>> 
>> Some numbers:
>> converting new BufferedImage(3000, 3000, TYPE_INT_ARGB) from CS_sRGB to 
>> CS_CIEXYZ via op.filter(src, dst).
>> //before the fix
>> //Benchmark                  Mode  Cnt    Score    Error  Units
>> //ColorAlphaConv.testFilter  avgt    5  603,392 ± 12,932  ms/op
>> 
>> //after the fix
>> //Benchmark                  Mode  Cnt    Score   Error  Units
>> //ColorAlphaConv.testFilter  avgt    5  121,624 ± 0,906  ms/op
>> 
>> But still slower than kcms
>> //kcms jdk8u60
>> //Benchmark                  Mode  Cnt   Score   Error  Units
>> //ColorAlphaConv.testFilter  avgt    5  13,256 ± 0,169  ms/op
>
> Sergey Bylokhov has updated the pull request with a new target base due to a 
> merge or a rebase. The incremental webrev excludes the unrelated changes 
> brought in by the merge/rebase. The pull request contains three additional 
> commits since the last revision:
> 
>  - Merge branch 'master' into JDK-8012229
>  - Update ColCvtAlphaDifferentSrcDst.java
>  - Initial fix

Marked as reviewed by azvegint (Reviewer).

-------------

PR: https://git.openjdk.java.net/jdk/pull/3239

Reply via email to