Expand description
§FCRC
Fast-CRC is a generic CRC implementation using SIMD instructions when available and a fallback when not.
Feature List:
-
A
referenceimplementation that operates bit-by-bit. Correct, concise, and readable. - A built in library of known CRC parameters, and the ability to easily use custom ones.
-
A
slice_byimplementation that uses lookup tables of size256 * NforN >= 1. This is the ‘standard’ implementation. - Excellent test coverage for each implementation and each of the well known algorithms, against the reference implementation and against other rust CRC crates.
- Benchmarks againts each implementation and against other rust CRC crates.
- Comparable performance to other CRC crates.
-
An
x86implementation usingsse4.1andpclmulqdqintrinsics, base on the intel whitepaper on the topic. -
An
x86implementation usingsse4.1crc intrinsics, when the selected algorithm is correct. -
An
aarch64implementation usingcrcintrinsics, when the selected algorithm is correct.
Benchmarking results to be added to the README.
Re-exports§
Modules§
- generic
- cbindgen:ignore Generic CRC trait
- models
- cbindgen:ignore Contains lists of models from Catalogue of parametrised CRC algorithms.
- pclmulqdq
- cbindgen:ignore Based on the intel white-paper Fast CRC Computation for Generic Polynomials Using PCLMULQDQ Instruction
- reference
- cbindgen:ignore The reference implementation, to which other implementations are checked.
- slice_
by - cbindgen:ignore Contains a Slice-By-N crc implementation.