Ariel Weisberg created CASSANDRA-8614:
-----------------------------------------

             Summary: Select optimal CRC32 implementation at runtime
                 Key: CASSANDRA-8614
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8614
             Project: Cassandra
          Issue Type: Improvement
          Components: Core
            Reporter: Ariel Weisberg


JDK 8 has support for an intrinsic for CRC32 that runs at 12-13 gigabytes/sec 
per core in my quick and dirty test. PureJavaCRC32 is < 800 megabytes/sec if I 
recall and it has a lookup table that evicts random cache lines every time it 
runs.

In order to capture the benefit of that when it is available we can select a 
CRC32 implementation at startup in a static block.

If JDK 8 is not what is running we can fall back to the existing PureJavaCRC32 
implementation.



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

Reply via email to