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/11/08 04:59:00 UTC

[jira] [Created] (ARROW-7098) [Java] Improve the performance of comparing two memory blocks

Liya Fan created ARROW-7098:
-------------------------------

             Summary: [Java] Improve the performance of comparing two memory blocks
                 Key: ARROW-7098
                 URL: https://issues.apache.org/jira/browse/ARROW-7098
             Project: Apache Arrow
          Issue Type: Improvement
          Components: Java
            Reporter: Liya Fan
            Assignee: Liya Fan


We often use the 8-4-1 paradigm to compare two blocks of memory:
1. First compare by 8-byte blocks in a loop
2. Then compare by 4-byte blocks in a loop
3. Last compare by 1-byte blocks in a loop

It can be proved that the second loop runs at most once. So we can replace the loop with a if statement, which will save us a comparison and two jump operations. 

According to the discussion in https://github.com/apache/arrow/pull/5508#discussion_r343973982, loop can be expensive. 



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