Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .github/workflows/backend-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,12 @@ jobs:
command: fmt
args: --manifest-path kzg-bench/Cargo.toml -- --check

- name: "kzg tests"
uses: actions-rs/cargo@v1
with:
command: test
args: --manifest-path kzg/Cargo.toml --no-fail-fast --release

backend_ci:
runs-on: ${{ matrix.os }}
strategy:
Expand Down
4 changes: 4 additions & 0 deletions arkworks3/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,10 @@ diskcache = [
"kzg/diskcache"
]

[[bench]]
name = "batch_addition"
harness = false

[[bench]]
name = "fft"
harness = false
Expand Down
15 changes: 15 additions & 0 deletions arkworks3/benches/batch_addition.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
use criterion::{criterion_group, criterion_main, Criterion};
use kzg_bench::benches::batch_addition::bench_batch_addition;
use rust_kzg_arkworks3::eip_7594::ArkBackend;

fn bench_batch_addition_(c: &mut Criterion) {
bench_batch_addition::<ArkBackend>(c)
}

criterion_group! {
name = benches;
config = Criterion::default();
targets = bench_batch_addition_
}

criterion_main!(benches);
7 changes: 7 additions & 0 deletions arkworks3/tests/batch_addition.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#[cfg(test)]
mod tests {
use kzg_bench::instantiate_batch_addition_tests;
use rust_kzg_arkworks3::eip_7594::ArkBackend;

instantiate_batch_addition_tests!(ArkBackend);
}
4 changes: 4 additions & 0 deletions arkworks4/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,10 @@ diskcache = [
"kzg/diskcache"
]

[[bench]]
name = "batch_addition"
harness = false

[[bench]]
name = "fft"
harness = false
Expand Down
15 changes: 15 additions & 0 deletions arkworks4/benches/batch_addition.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
use criterion::{criterion_group, criterion_main, Criterion};
use kzg_bench::benches::batch_addition::bench_batch_addition;
use rust_kzg_arkworks4::eip_7594::ArkBackend;

fn bench_batch_addition_(c: &mut Criterion) {
bench_batch_addition::<ArkBackend>(c)
}

criterion_group! {
name = benches;
config = Criterion::default();
targets = bench_batch_addition_
}

criterion_main!(benches);
7 changes: 7 additions & 0 deletions arkworks4/tests/batch_addition.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#[cfg(test)]
mod tests {
use kzg_bench::instantiate_batch_addition_tests;
use rust_kzg_arkworks4::eip_7594::ArkBackend;

instantiate_batch_addition_tests!(ArkBackend);
}
4 changes: 4 additions & 0 deletions arkworks5/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,10 @@ diskcache = [
"kzg/diskcache"
]

[[bench]]
name = "batch_addition"
harness = false

[[bench]]
name = "fft"
harness = false
Expand Down
15 changes: 15 additions & 0 deletions arkworks5/benches/batch_addition.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
use criterion::{criterion_group, criterion_main, Criterion};
use kzg_bench::benches::batch_addition::bench_batch_addition;
use rust_kzg_arkworks5::eip_7594::ArkBackend;

fn bench_batch_addition_(c: &mut Criterion) {
bench_batch_addition::<ArkBackend>(c)
}

criterion_group! {
name = benches;
config = Criterion::default();
targets = bench_batch_addition_
}

criterion_main!(benches);
7 changes: 7 additions & 0 deletions arkworks5/tests/batch_addition.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#[cfg(test)]
mod tests {
use kzg_bench::instantiate_batch_addition_tests;
use rust_kzg_arkworks5::eip_7594::ArkBackend;

instantiate_batch_addition_tests!(ArkBackend);
}
4 changes: 4 additions & 0 deletions blst/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,10 @@ diskcache = [
"kzg/diskcache"
]

[[bench]]
name = "batch_addition"
harness = false

[[bench]]
name = "das"
harness = false
Expand Down
15 changes: 15 additions & 0 deletions blst/benches/batch_addition.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
use criterion::{criterion_group, criterion_main, Criterion};
use kzg_bench::benches::batch_addition::bench_batch_addition;
use rust_kzg_blst::eip_7594::BlstBackend;

fn bench_batch_addition_(c: &mut Criterion) {
bench_batch_addition::<BlstBackend>(c)
}

criterion_group! {
name = benches;
config = Criterion::default();
targets = bench_batch_addition_
}

criterion_main!(benches);
7 changes: 7 additions & 0 deletions blst/tests/batch_addition.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#[cfg(test)]
mod tests {
use kzg_bench::instantiate_batch_addition_tests;
use rust_kzg_blst::eip_7594::BlstBackend;

instantiate_batch_addition_tests!(BlstBackend);
}
4 changes: 4 additions & 0 deletions constantine/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,10 @@ wbits = [
]
c_bindings = []

[[bench]]
name = "batch_addition"
harness = false

[[bench]]
name = "das"
harness = false
Expand Down
15 changes: 15 additions & 0 deletions constantine/benches/batch_addition.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
use criterion::{criterion_group, criterion_main, Criterion};
use kzg_bench::benches::batch_addition::bench_batch_addition;
use rust_kzg_constantine::eip_7594::CtBackend;

fn bench_batch_addition_(c: &mut Criterion) {
bench_batch_addition::<CtBackend>(c)
}

criterion_group! {
name = benches;
config = Criterion::default();
targets = bench_batch_addition_
}

criterion_main!(benches);
7 changes: 7 additions & 0 deletions constantine/tests/batch_addition.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#[cfg(test)]
mod tests {
use kzg_bench::instantiate_batch_addition_tests;
use rust_kzg_constantine::eip_7594::CtBackend;

instantiate_batch_addition_tests!(CtBackend);
}
39 changes: 39 additions & 0 deletions kzg-bench/src/benches/batch_addition.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
use criterion::{BatchSize, Criterion};
use kzg::{msm::batch_addition::multi_batch_addition_binary_tree_stride, EcBackend, G1Affine, G1};
use rand::{thread_rng, Rng};

pub fn bench_batch_addition<B: EcBackend>(c: &mut Criterion) {
let batches = 32usize;
let numpoints = 1usize << 14;

let mut rng = thread_rng();

let points = (0..batches)
.map(|_| {
let mut pts = (0..numpoints)
.map(|_| B::G1Affine::into_affine(&B::G1::rand()))
.collect::<Vec<_>>();

for _ in 0..rng.gen_range(3..10) {
pts[rng.gen_range(0..numpoints)] = B::G1Affine::zero();
}

pts
})
.collect::<Vec<_>>();

c.bench_function("multi_batch_addition_binary_tree_stride", |b| {
b.iter_batched(
|| points.clone(),
|points| {
multi_batch_addition_binary_tree_stride::<
B::G1,
B::G1Fp,
B::G1Affine,
B::G1ProjAddAffine,
>(points)
},
BatchSize::SmallInput,
);
});
}
1 change: 1 addition & 0 deletions kzg-bench/src/benches/mod.rs
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
pub mod batch_addition;
pub mod das;
pub mod eip_4844;
pub mod eip_7594;
Expand Down
Loading
Loading