You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by "Liya Fan (Jira)" <ji...@apache.org> on 2019/10/29 12:36:00 UTC

[jira] [Created] (ARROW-7019) [Java] Improve the performance of loading validity buffers

Liya Fan created ARROW-7019:
-------------------------------

             Summary: [Java] Improve the performance of loading validity buffers
                 Key: ARROW-7019
                 URL: https://issues.apache.org/jira/browse/ARROW-7019
             Project: Apache Arrow
          Issue Type: Improvement
          Components: Java
            Reporter: Liya Fan
            Assignee: Liya Fan


At the receiver side of flighting, loading validity buffer is an important operation, as each vector has a validity buffer. 

For non-nullable vectors, the current implementation of loading the validity buffer is inefficient.  We improve the performance of this operation by efficiently setting the bits of a memory region to 1. 

Benchmark results show that the changes leads to a 35% performance improvement:

Before:
BitVectorHelperBenchmarks.loadValidityBufferAllOne  avgt    5  748.916 ± 23.290  ns/op

After:
BitVectorHelperBenchmarks.loadValidityBufferAllOne  avgt    5  487.352 ± 15.046  ns/op




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