Skip to content

Commit df01d9c

Browse files
committed
fix benchmark hygiene
Signed-off-by: Connor Tsui <[email protected]>
1 parent 923ddb4 commit df01d9c

File tree

1 file changed

+16
-14
lines changed

1 file changed

+16
-14
lines changed

vortex-compute/benches/avx512.rs

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -46,42 +46,44 @@ const SAMPLE_SIZE: u32 = 64;
4646

4747
#[divan::bench(sample_size = SAMPLE_SIZE, args = SIZES.iter().copied().cartesian_product(PROBABILITIES.iter().copied()))]
4848
fn in_place_scalar(bencher: divan::Bencher, (size, probability): (usize, f64)) {
49-
let mask = create_random_mask(size, probability);
49+
let mask = divan::black_box(create_random_mask(size, probability));
50+
let data = (0..size as i32).collect::<Vec<_>>();
5051
bencher
51-
.with_inputs(|| (0..size as i32).collect::<Vec<_>>())
52-
.bench_refs(|data| filter_in_place_scalar(data, &mask))
52+
.with_inputs(|| (data.clone(), &mask))
53+
.bench_refs(|(data, mask)| filter_in_place_scalar(data, mask))
5354
}
5455

5556
#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
5657
#[divan::bench(sample_size = SAMPLE_SIZE, args = SIZES.iter().copied().cartesian_product(PROBABILITIES.iter().copied()))]
5758
fn in_place_avx512(bencher: divan::Bencher, (size, probability): (usize, f64)) {
58-
let mask = create_random_mask(size, probability);
59+
let mask = divan::black_box(create_random_mask(size, probability));
60+
let data = (0..size as i32).collect::<Vec<_>>();
5961
bencher
60-
.with_inputs(|| (0..size as i32).collect::<Vec<_>>())
61-
.bench_refs(|data| unsafe { filter_in_place_avx512(data, &mask) })
62+
.with_inputs(|| (data.clone(), &mask))
63+
.bench_refs(|(data, mask)| filter_in_place_avx512(data, mask))
6264
}
6365

6466
#[divan::bench(sample_size = SAMPLE_SIZE, args = SIZES.iter().copied().cartesian_product(PROBABILITIES.iter().copied()))]
6567
fn out_scalar(bencher: divan::Bencher, (size, probability): (usize, f64)) {
66-
let mask = create_random_mask(size, probability);
68+
let mask = divan::black_box(create_random_mask(size, probability));
69+
let src = (0..size as i32).collect::<Vec<_>>();
6770
bencher
6871
.with_inputs(|| {
69-
let src = (0..size as i32).collect::<Vec<_>>();
7072
let dest = vec![0i32; size];
71-
(src, dest)
73+
(src.clone(), dest, &mask)
7274
})
73-
.bench_refs(|(src, dest)| filter_into_scalar(src, dest, &mask))
75+
.bench_refs(|(src, dest, mask)| filter_into_scalar(src, dest, mask))
7476
}
7577

7678
#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
7779
#[divan::bench(sample_size = SAMPLE_SIZE, args = SIZES.iter().copied().cartesian_product(PROBABILITIES.iter().copied()))]
7880
fn out_avx512(bencher: divan::Bencher, (size, probability): (usize, f64)) {
79-
let mask = create_random_mask(size, probability);
81+
let mask = divan::black_box(create_random_mask(size, probability));
82+
let src = (0..size as i32).collect::<Vec<_>>();
8083
bencher
8184
.with_inputs(|| {
82-
let src = (0..size as i32).collect::<Vec<_>>();
8385
let dest = vec![0i32; size];
84-
(src, dest)
86+
(src.clone(), dest, &mask)
8587
})
86-
.bench_refs(|(src, dest)| unsafe { filter_into_avx512(src, dest, &mask) })
88+
.bench_refs(|(src, dest, mask)| unsafe { filter_into_avx512(src, dest, mask) })
8789
}

0 commit comments

Comments
 (0)