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

Benedict Elliott Smith commented on CASSANDRA-16360:
----------------------------------------------------

Hi [~azotcsit], just thought I'd comment briefly:

# The benchmarks looks good to me, though I've only skimmed them they're pretty 
straightforward. I think they'll be a good contribution, thanks.
# If we migrate to an intrinsic variant of CRC32c, probably we should just get 
rid of the crc24 - saving one byte isn't probably worth it in this case
# Glancing at your benchmark results (assuming they ran for long enough) 
suggests the migration to crc32c should definitely be postponed until JDK9, 
particularly as the performance of crc32c is only marginally improved on JDK11 
versus crc32, whereas it is significantly harmed in reverse for JDK8.

That said, it looks like there might be some measurement error in your results, 
and the crc32 intrinsic version may be benefitting from tight loop benchmarking 
(so high cache occupancy). It certainly doesn't look like a slam dunk for 
urgent migration anyway.

Thanks for putting in the work. I expect that 4.x will ship targeting JDK11+, 
which will open for active development very soon. I think this would be a good 
time to consider migrating.

> CRC32 is inefficient on x86
> ---------------------------
>
>                 Key: CASSANDRA-16360
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-16360
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Messaging/Client
>            Reporter: Avi Kivity
>            Assignee: Alexey Zotov
>            Priority: Normal
>              Labels: protocolv6
>             Fix For: 4.0.x
>
>
> The client/server protocol specifies CRC24 and CRC32 as the checksum 
> algorithm (cql_protocol_V5_framing.asc). Those however are expensive to 
> compute; this affects both the client and the server.
>  
> A better checksum algorithm is CRC32C, which has hardware support on x86 (as 
> well as other modern architectures).



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to