3 releases (stable)

Uses old Rust 2015

1.0.1 Feb 1, 2017
0.1.0 Jan 30, 2017

#2321 in Algorithms

Download history 51/week @ 2024-07-20 67/week @ 2024-07-27 73/week @ 2024-08-03 35/week @ 2024-08-10 33/week @ 2024-08-17 29/week @ 2024-08-24 67/week @ 2024-08-31 63/week @ 2024-09-07 41/week @ 2024-09-14 83/week @ 2024-09-21 97/week @ 2024-09-28 64/week @ 2024-10-05 86/week @ 2024-10-12 59/week @ 2024-10-19 44/week @ 2024-10-26 26/week @ 2024-11-02

223 downloads per month
Used in 2 crates (via pi_store)

MIT license

7KB
72 lines

fastcmp

Build Status Build status Coverage Status master doc fastcmp License MIT Crates.io doc.rs

A fast byte slice comparison library

The library is intended to provide a faster byte slice comparison than the standard library. Also raw string literals b"like this" are compareable this way. It also supports simd comparisons by enabling the feature simd_support in the Cargo.toml.

Example usage

use fastcmp::Compare;

let vec = vec![1, 2, 3, 4, 5];
assert!(vec.feq(&[1, 2, 3, 4, 5]));

Benchmarks

The benchmarking results for comparison of two &[u8] with a size of 256:

test fast_compare_equal    ... bench:          14 ns/iter (+/- 9) = 18285 MB/s
test fast_compare_unequal  ... bench:          14 ns/iter (+/- 0) = 18285 MB/s
test slice_compare_equal   ... bench:          35 ns/iter (+/- 29) = 7314 MB/s
test slice_compare_unequal ... bench:          37 ns/iter (+/- 3) = 6918 MB/s

Contributing

You want to contribute to this project? Wow, thanks! So please just fork it and send me a pull request.

No runtime deps