mirror of
https://github.com/Qortal/pirate-librustzcash.git
synced 2025-07-31 12:31:22 +00:00
Merge commit 'd029ddea8396d7a39910028dd5ae436a3bd3e9bb' as 'jubjub'
This commit is contained in:
51
jubjub/benches/fq_bench.rs
Normal file
51
jubjub/benches/fq_bench.rs
Normal file
@@ -0,0 +1,51 @@
|
||||
#![feature(test)]
|
||||
|
||||
extern crate test;
|
||||
|
||||
use jubjub::*;
|
||||
use test::Bencher;
|
||||
|
||||
#[bench]
|
||||
fn bench_mul_assign(bencher: &mut Bencher) {
|
||||
let mut n = Fq::one();
|
||||
let b = -Fq::one();
|
||||
bencher.iter(move || {
|
||||
n *= &b;
|
||||
});
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_sub_assign(bencher: &mut Bencher) {
|
||||
let mut n = Fq::one();
|
||||
let b = -Fq::one();
|
||||
bencher.iter(move || {
|
||||
n -= &b;
|
||||
});
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_add_assign(bencher: &mut Bencher) {
|
||||
let mut n = Fq::one();
|
||||
let b = -Fq::one();
|
||||
bencher.iter(move || {
|
||||
n += &b;
|
||||
});
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_square_assign(bencher: &mut Bencher) {
|
||||
let n = Fq::one();
|
||||
bencher.iter(move || n.square());
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_invert(bencher: &mut Bencher) {
|
||||
let n = Fq::one();
|
||||
bencher.iter(move || n.invert());
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_sqrt(bencher: &mut Bencher) {
|
||||
let n = Fq::one().double().double();
|
||||
bencher.iter(move || n.sqrt());
|
||||
}
|
51
jubjub/benches/fr_bench.rs
Normal file
51
jubjub/benches/fr_bench.rs
Normal file
@@ -0,0 +1,51 @@
|
||||
#![feature(test)]
|
||||
|
||||
extern crate test;
|
||||
|
||||
use jubjub::*;
|
||||
use test::Bencher;
|
||||
|
||||
#[bench]
|
||||
fn bench_mul_assign(bencher: &mut Bencher) {
|
||||
let mut n = Fr::one();
|
||||
let b = -Fr::one();
|
||||
bencher.iter(move || {
|
||||
n *= &b;
|
||||
});
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_sub_assign(bencher: &mut Bencher) {
|
||||
let mut n = Fr::one();
|
||||
let b = -Fr::one();
|
||||
bencher.iter(move || {
|
||||
n -= &b;
|
||||
});
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_add_assign(bencher: &mut Bencher) {
|
||||
let mut n = Fr::one();
|
||||
let b = -Fr::one();
|
||||
bencher.iter(move || {
|
||||
n += &b;
|
||||
});
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_square_assign(bencher: &mut Bencher) {
|
||||
let n = Fr::one();
|
||||
bencher.iter(move || n.square());
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_invert(bencher: &mut Bencher) {
|
||||
let n = Fr::one();
|
||||
bencher.iter(move || n.invert());
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_sqrt(bencher: &mut Bencher) {
|
||||
let n = Fr::one().double().double();
|
||||
bencher.iter(move || n.sqrt());
|
||||
}
|
58
jubjub/benches/point_bench.rs
Normal file
58
jubjub/benches/point_bench.rs
Normal file
@@ -0,0 +1,58 @@
|
||||
#![feature(test)]
|
||||
|
||||
extern crate test;
|
||||
|
||||
use jubjub::*;
|
||||
use test::Bencher;
|
||||
|
||||
// Non-Niels
|
||||
|
||||
#[bench]
|
||||
fn bench_point_doubling(bencher: &mut Bencher) {
|
||||
let a = ExtendedPoint::identity();
|
||||
bencher.iter(move || a.double());
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_point_addition(bencher: &mut Bencher) {
|
||||
let a = ExtendedPoint::identity();
|
||||
let b = -ExtendedPoint::identity();
|
||||
bencher.iter(move || a + b);
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_point_subtraction(bencher: &mut Bencher) {
|
||||
let a = ExtendedPoint::identity();
|
||||
let b = -ExtendedPoint::identity();
|
||||
bencher.iter(move || a + b);
|
||||
}
|
||||
|
||||
// Niels
|
||||
|
||||
#[bench]
|
||||
fn bench_cached_point_addition(bencher: &mut Bencher) {
|
||||
let a = ExtendedPoint::identity();
|
||||
let b = ExtendedPoint::identity().to_niels();
|
||||
bencher.iter(move || &a + &b);
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_cached_affine_point_subtraction(bencher: &mut Bencher) {
|
||||
let a = ExtendedPoint::identity();
|
||||
let b = AffinePoint::identity().to_niels();
|
||||
bencher.iter(move || &a + &b);
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_cached_point_subtraction(bencher: &mut Bencher) {
|
||||
let a = ExtendedPoint::identity();
|
||||
let b = ExtendedPoint::identity().to_niels();
|
||||
bencher.iter(move || &a + &b);
|
||||
}
|
||||
|
||||
#[bench]
|
||||
fn bench_cached_affine_point_addition(bencher: &mut Bencher) {
|
||||
let a = ExtendedPoint::identity();
|
||||
let b = AffinePoint::identity().to_niels();
|
||||
bencher.iter(move || &a + &b);
|
||||
}
|
Reference in New Issue
Block a user