mirror of
https://github.com/logos-blockchain/sponges.git
synced 2026-07-30 02:23:31 +00:00
37 lines
762 B
Rust
37 lines
762 B
Rust
#![feature(test)]
|
|
extern crate test;
|
|
|
|
use bash_f::{STATE_WORDS, bash_f};
|
|
use test::Bencher;
|
|
|
|
#[bench]
|
|
fn bench_bash_f(b: &mut Bencher) {
|
|
let mut state = [0u64; STATE_WORDS];
|
|
b.iter(|| {
|
|
bash_f(test::black_box(&mut state));
|
|
test::black_box(&state);
|
|
});
|
|
}
|
|
|
|
#[bench]
|
|
fn bench_bash_f_10_rounds(b: &mut Bencher) {
|
|
let mut state = [0u64; STATE_WORDS];
|
|
b.iter(|| {
|
|
for _ in 0..10 {
|
|
bash_f(test::black_box(&mut state));
|
|
}
|
|
test::black_box(&state);
|
|
});
|
|
}
|
|
|
|
#[bench]
|
|
fn bench_bash_f_100_rounds(b: &mut Bencher) {
|
|
let mut state = [0u64; STATE_WORDS];
|
|
b.iter(|| {
|
|
for _ in 0..100 {
|
|
bash_f(test::black_box(&mut state));
|
|
}
|
|
test::black_box(&state);
|
|
});
|
|
}
|