Merge commit 'd029ddea8396d7a39910028dd5ae436a3bd3e9bb' as 'jubjub'

This commit is contained in:
Sean Bowe
2019-12-12 11:32:47 -07:00
34 changed files with 4035 additions and 0 deletions

View 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());
}

View 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());
}

View 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);
}