blob: 666f0f05254dd3dc819996c1047492099a5dcacd [file] [log] [blame]
#![feature(test)]
extern crate test;
use bitvec::prelude::*;
use test::Bencher;
#[bench]
fn bitwise_eq(bench: &mut Bencher) {
let a = bitarr![usize, Lsb0; 0; 500];
let b = bitarr![usize, Msb0; 0; 500];
bench.iter(|| {
a.iter()
.by_vals()
.zip(b.iter().by_vals())
.all(|(a, b)| a == b)
});
}
#[bench]
fn plain_eq(bench: &mut Bencher) {
let a = bitarr![usize, Lsb0; 0; 500];
let b = bitarr![usize, Msb0; 0; 500];
bench.iter(|| a == b);
}
#[bench]
fn lsb0_accel_eq(bench: &mut Bencher) {
let a = bitarr![usize, Lsb0; 0; 500];
let b = bitarr![usize, Lsb0; 0; 500];
bench.iter(|| a == b);
}
#[bench]
fn msb0_accel_eq(bench: &mut Bencher) {
let a = bitarr![usize, Msb0; 0; 500];
let b = bitarr![usize, Msb0; 0; 500];
bench.iter(|| a == b);
}