cossin bench: be fair to glibc

This commit is contained in:
Robert Jördens 2020-12-11 19:08:11 +01:00
parent e3ab2b2db5
commit d271dccaba
1 changed files with 5 additions and 5 deletions

View File

@ -1,12 +1,12 @@
use core::f32::consts::PI;
use criterion::{black_box, criterion_group, criterion_main, Criterion}; use criterion::{black_box, criterion_group, criterion_main, Criterion};
use dsp::trig::cossin; use dsp::trig::cossin;
fn cossin_bench(c: &mut Criterion) { fn cossin_bench(c: &mut Criterion) {
let z = -0x7304_2531_i32; let zi = -0x7304_2531_i32;
c.bench_function("cossin(z)", |b| b.iter(|| cossin(black_box(z)))); let zf = zi as f32 / i32::MAX as f32 * PI;
c.bench_function("(z as f32).sin_cos()", |b| { c.bench_function("cossin(zi)", |b| b.iter(|| cossin(black_box(zi))));
b.iter(|| (black_box(z) as f32).sin_cos()) c.bench_function("zf.sin_cos()", |b| b.iter(|| black_box(zf).sin_cos()));
});
} }
criterion_group!(benches, cossin_bench); criterion_group!(benches, cossin_bench);