You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Alan Burlison (JIRA)" <ji...@apache.org> on 2015/05/21 12:28:00 UTC
[jira] [Created] (HADOOP-12012) Investigate JNI for improving byte
array comparison performance
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)