librustzcash/jubjub/benches/fr_bench.rs

59 lines
1.3 KiB
Rust
Raw Normal View History

2019-12-19 13:55:01 -08:00
use criterion::{criterion_group, criterion_main, Criterion};
use jubjub::*;
2019-12-19 13:55:01 -08:00
fn bench_add_assign(c: &mut Criterion) {
let mut n = Fr::one();
2019-12-19 13:55:01 -08:00
let neg_one = -Fr::one();
c.bench_function("Fr add_assign", |b| {
b.iter(move || {
n += &neg_one;
})
});
}
2019-12-19 13:55:01 -08:00
fn bench_sub_assign(c: &mut Criterion) {
let mut n = Fr::one();
2019-12-19 13:55:01 -08:00
let neg_one = -Fr::one();
c.bench_function("Fr sub_assign", |b| {
b.iter(move || {
n -= &neg_one;
})
});
}
2019-12-19 13:55:01 -08:00
fn bench_mul_assign(c: &mut Criterion) {
let mut n = Fr::one();
2019-12-19 13:55:01 -08:00
let neg_one = -Fr::one();
c.bench_function("Fr mul_assign", |b| {
b.iter(move || {
n *= &neg_one;
})
});
}
2019-12-19 13:55:01 -08:00
fn bench_square(c: &mut Criterion) {
let n = Fr::one();
2019-12-19 13:55:01 -08:00
c.bench_function("Fr square", |b| b.iter(move || n.square()));
}
2019-12-19 13:55:01 -08:00
fn bench_invert(c: &mut Criterion) {
let n = Fr::one();
2019-12-19 13:55:01 -08:00
c.bench_function("Fr invert", |b| b.iter(move || n.invert()));
}
2019-12-19 13:55:01 -08:00
fn bench_sqrt(c: &mut Criterion) {
let n = Fr::one().double().double();
2019-12-19 13:55:01 -08:00
c.bench_function("Fr sqrt", |b| b.iter(move || n.sqrt()));
}
2019-12-19 13:55:01 -08:00
criterion_group!(
benches,
bench_add_assign,
bench_sub_assign,
bench_mul_assign,
bench_square,
bench_invert,
bench_sqrt,
);
criterion_main!(benches);