Chorba: A novel CRC32 implementation
Sam Russell

TL;DR
Chorba introduces a new CRC32 calculation method that doubles throughput without lookup tables or hardware, matching or surpassing hardware-accelerated solutions and simplifying hardware design.
Contribution
The paper presents a novel CRC32 implementation that improves efficiency and performance without relying on lookup tables or hardware support.
Findings
100% throughput increase over previous methods
Comparable or better performance than hardware solutions
Potential for simplified hardware CRC32 implementations
Abstract
This paper describes a novel method for efficiently calculating CRC checksums without lookup tables or hardware support for polynomial multiplication. Throughput of CRC32 is increased by 100% across different platforms compared with the current state of the art. Performance is on par with or exceeds hardware-accelerated solutions on x86_64 and ARMv8 processors, and these hardware-accelerated solutions see a performance increase of 5-20% depending on message length. The small number of operations required with this approach could simplify hardware CRC32 implementations.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsEmbedded Systems Design Techniques
