INNER CODE UNIT · Rust
bench_naive_prefix_scan
soedinglab/metaeuk · lib/mmseqs/lib/block-aligner/benches/prefix_scan.rs:29
fn bench_naive_prefix_scan(b: &mut Bencher) {
#[target_feature(enable = "avx2")]
unsafe fn inner(b: &mut Bencher) {
let vec = A([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 12, 13, 14, 11]);
let vec = simd_load(vec.0.as_ptr() as *const Simd);
b.iter(|| {
let gap = simd_set1_i16(-1);
let (_, consts) = get_prefix_scan_consts(gap);
simd_naive_prefix_scan_i16(black_box(vec), gap, consts)
});
}
unsafe { inner(b); }
}