Implementation of xxHash in Rust
Version corresponds to xxHash releases
Each algorithm is implemented via feature, allowing precise control over code size.
xxh32
- Enables 32bit algorithm. Suitable for x86 targetsconst_xxh32
- const fn
version of xxh32
algorithmxxh64
- Enables 64 algorithm. Suitable for x86_64 targetsconst_xxh64
- const fn
version of xxh64
algorithmxxh3
- Enables xxh3
family of algorithms, superior to xxh32
and xxh64
in terms of performance.const_xxh3
- const fn
version of xxh3
algorithmSimilar to reference implementation, crate implements various SIMDs in xxh3
depending on provided flags.
All checks are performed only at compile time, hence user is encouraged to enable these accelerations (for example via -C target_cpu=native
)
Used SIMD acceleration:
x86_64
targets.Crate 0.8.0
contains invalid API and hence new increment was required.
As 0.8.0
is yanked, I consider it non-existing and hence 0.8.1
is the only version with stable API
In order to keep up with original implementation version I'm not planning to bump major/minor until C implementation does so.