mirror of
https://github.com/Qortal/pirate-librustzcash.git
synced 2025-02-11 17:55:46 +00:00
Migrate zcash_primitives benchmarks to criterion
This commit is contained in:
parent
7ea1da5d6f
commit
00499b3441
1
Cargo.lock
generated
1
Cargo.lock
generated
@ -968,6 +968,7 @@ dependencies = [
|
|||||||
"blake2b_simd 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
"blake2b_simd 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"blake2s_simd 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
"blake2s_simd 0.5.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
"byteorder 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
"criterion 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"crypto_api_chachapoly 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
"crypto_api_chachapoly 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"ff 0.5.0",
|
"ff 0.5.0",
|
||||||
"fpe 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
"fpe 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
|
@ -31,11 +31,16 @@ sha2 = "0.8"
|
|||||||
subtle = "2.2.1"
|
subtle = "2.2.1"
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
|
criterion = "0.3"
|
||||||
hex-literal = "0.2"
|
hex-literal = "0.2"
|
||||||
rand_xorshift = "0.2"
|
rand_xorshift = "0.2"
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
transparent-inputs = ["ripemd160", "secp256k1"]
|
transparent-inputs = ["ripemd160", "secp256k1"]
|
||||||
|
|
||||||
|
[[bench]]
|
||||||
|
name = "pedersen_hash"
|
||||||
|
harness = false
|
||||||
|
|
||||||
[badges]
|
[badges]
|
||||||
maintenance = { status = "actively-developed" }
|
maintenance = { status = "actively-developed" }
|
||||||
|
@ -1,17 +1,10 @@
|
|||||||
#![feature(test)]
|
use criterion::{criterion_group, criterion_main, Criterion};
|
||||||
|
|
||||||
extern crate pairing;
|
|
||||||
extern crate rand_core;
|
|
||||||
extern crate test;
|
|
||||||
extern crate zcash_primitives;
|
|
||||||
|
|
||||||
use pairing::bls12_381::Bls12;
|
use pairing::bls12_381::Bls12;
|
||||||
use rand_core::{OsRng, RngCore};
|
use rand_core::{OsRng, RngCore};
|
||||||
use zcash_primitives::jubjub::JubjubBls12;
|
use zcash_primitives::jubjub::JubjubBls12;
|
||||||
use zcash_primitives::pedersen_hash::{pedersen_hash, Personalization};
|
use zcash_primitives::pedersen_hash::{pedersen_hash, Personalization};
|
||||||
|
|
||||||
#[bench]
|
fn bench_pedersen_hash(c: &mut Criterion) {
|
||||||
fn bench_pedersen_hash(b: &mut test::Bencher) {
|
|
||||||
let params = JubjubBls12::new();
|
let params = JubjubBls12::new();
|
||||||
let rng = &mut OsRng;
|
let rng = &mut OsRng;
|
||||||
let bits = (0..510)
|
let bits = (0..510)
|
||||||
@ -19,5 +12,10 @@ fn bench_pedersen_hash(b: &mut test::Bencher) {
|
|||||||
.collect::<Vec<_>>();
|
.collect::<Vec<_>>();
|
||||||
let personalization = Personalization::MerkleTree(31);
|
let personalization = Personalization::MerkleTree(31);
|
||||||
|
|
||||||
b.iter(|| pedersen_hash::<Bls12, _>(personalization, bits.clone(), ¶ms));
|
c.bench_function("Pedersen hash", |b| {
|
||||||
|
b.iter(|| pedersen_hash::<Bls12, _>(personalization, bits.clone(), ¶ms))
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
criterion_group!(benches, bench_pedersen_hash);
|
||||||
|
criterion_main!(benches);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user