Alan Burlison created HADOOP-12012:
--------------------------------------

             Summary: Investigate JNI for improving byte array comparison 
performance
                 Key: HADOOP-12012
                 URL: https://issues.apache.org/jira/browse/HADOOP-12012
             Project: Hadoop Common
          Issue Type: Sub-task
          Components: benchmarks, io, performance
    Affects Versions: 2.7.0
         Environment: All
            Reporter: Alan Burlison
            Assignee: Alan Burlison
            Priority: Minor


HADOOP-7761 added functionality to compare byte arrays by treating them as 
arrays of 64-bit longs for performance. However HADOOP-11466 reverted this 
change for the SPARC architecture as it causes misaligned traps which causes 
performance to be worse rather than better.

Most platforms have a highly-optimised memcmp() libc function that uses 
processor-specific functionality to perform byte array comparison as quickly as 
is possible for the platform.

We have done some preliminary benchmarking on Solaris that suggests that, for 
reasonably-sized byte arrays, JNI code using memcmp() outperforms both of the 
current Java byte-size and long-size implementations on both SPARC and x86 . We 
are confirming the results and will repeat the same benchmark on Linux and 
report the results here for discussion.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to