Frank Du created ARROW-8141:
-------------------------------

             Summary: [C++] Optimize BM_PlainDecodingBoolean performance using 
AVX512 Intrinsics API
                 Key: ARROW-8141
                 URL: https://issues.apache.org/jira/browse/ARROW-8141
             Project: Apache Arrow
          Issue Type: Improvement
          Components: C++
            Reporter: Frank Du
         Attachments: image-2020-03-18-11-08-38-201.png

We are running benchmark on the arrow avx512 build, perf show unpack1_32 as the 
major hotspot for BM_PlainDecodingBoolean indicator.

Implement this func with Intrinsics code show big improvements. See below the 
results on CLX 8280 cpu which is capable of AVX512.
|Benchmark|Indictor|unit|default sse build|avx512 build|avx512 build + 
Intrinsics|Intrinsics improvements|
|parquet-encoding-benchmark|BM_PlainDecodingBoolean/1024|G/s|1.55394|3.77701|5.02805|1.331224964|
|BM_PlainDecodingBoolean/4096 |G/s|1.83472|5.3826|8.3443|1.550235945|
|BM_PlainDecodingBoolean/32768|G/s|2.00957|6.1258|10.3793|1.694358288|
|BM_PlainDecodingBoolean/65536|G/s|2.02249|6.20035|10.5778|1.706000468|



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to