You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Benedict (JIRA)" <ji...@apache.org> on 2015/02/09 21:39:36 UTC

[jira] [Comment Edited] (CASSANDRA-8614) Select optimal CRC32 implementation at runtime

    [ https://issues.apache.org/jira/browse/CASSANDRA-8614?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14312830#comment-14312830 ] 

Benedict edited comment on CASSANDRA-8614 at 2/9/15 8:39 PM:
-------------------------------------------------------------

I meant I was planning to do all of my commits post then, not that I would commit this to the 2.1 branch. But glad we got it cleared up in case I did without thinking too much about it.


was (Author: benedict):
I meant I was planning to do all of my commits post then, not that I would commit this to the 2.1 branch.

> 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
>            Assignee: Ariel Weisberg
>              Labels: performance
>         Attachments: 8614.patch, Sample.java
>
>
> 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)