From d1af98159de66f3f5e9f160a79eb52734b11340b Mon Sep 17 00:00:00 2001 From: Mamy Ratsimbazafy Date: Sat, 27 Apr 2024 08:53:23 +0200 Subject: [PATCH] commit subgroup check benches from https://github.com/mratsim/constantine/pull/368\#issuecomment-2047473465 --- benchmarks/bench_summary_bls12_377.nim | 3 +++ benchmarks/bench_summary_bls12_381.nim | 3 +++ benchmarks/bench_summary_bn254_nogami.nim | 3 +++ benchmarks/bench_summary_bn254_snarks.nim | 3 +++ benchmarks/bench_summary_template.nim | 7 +++++++ 5 files changed, 19 insertions(+) diff --git a/benchmarks/bench_summary_bls12_377.nim b/benchmarks/bench_summary_bls12_377.nim index d8b3fa2c8..ee11b7cbc 100644 --- a/benchmarks/bench_summary_bls12_377.nim +++ b/benchmarks/bench_summary_bls12_377.nim @@ -76,6 +76,9 @@ proc main() = finalExpBLS12Bench(curve, Iters) pairingBLS12Bench(curve, Iters) separator() + subgroupCheckBench(ECP_ShortW_Jac[Fp[curve], G1], Iters) + subgroupCheckBench(ECP_ShortW_Jac[Fp2[curve], G2], Iters) + separator() main() notes() diff --git a/benchmarks/bench_summary_bls12_381.nim b/benchmarks/bench_summary_bls12_381.nim index aabfecdb2..f49c40bbc 100644 --- a/benchmarks/bench_summary_bls12_381.nim +++ b/benchmarks/bench_summary_bls12_381.nim @@ -80,6 +80,9 @@ proc main() = hashToCurveBLS12381G1Bench(Iters) hashToCurveBLS12381G2Bench(Iters) separator() + subgroupCheckBench(ECP_ShortW_Jac[Fp[curve], G1], Iters) + subgroupCheckBench(ECP_ShortW_Jac[Fp2[curve], G2], Iters) + separator() main() notes() diff --git a/benchmarks/bench_summary_bn254_nogami.nim b/benchmarks/bench_summary_bn254_nogami.nim index eadd572fc..c9aae9337 100644 --- a/benchmarks/bench_summary_bn254_nogami.nim +++ b/benchmarks/bench_summary_bn254_nogami.nim @@ -76,6 +76,9 @@ proc main() = finalExpBNBench(curve, Iters) pairingBNBench(curve, Iters) separator() + subgroupCheckBench(ECP_ShortW_Jac[Fp[curve], G1], Iters) + subgroupCheckBench(ECP_ShortW_Jac[Fp2[curve], G2], Iters) + separator() main() notes() diff --git a/benchmarks/bench_summary_bn254_snarks.nim b/benchmarks/bench_summary_bn254_snarks.nim index 54e992cb2..a6c15a3e5 100644 --- a/benchmarks/bench_summary_bn254_snarks.nim +++ b/benchmarks/bench_summary_bn254_snarks.nim @@ -79,6 +79,9 @@ proc main() = hashToCurveBN254SnarksG1Bench(Iters) hashToCurveBN254SnarksG2Bench(Iters) separator() + subgroupCheckBench(ECP_ShortW_Jac[Fp[curve], G1], Iters) + subgroupCheckBench(ECP_ShortW_Jac[Fp2[curve], G2], Iters) + separator() main() notes() diff --git a/benchmarks/bench_summary_template.nim b/benchmarks/bench_summary_template.nim index 97a468704..4f3551ca1 100644 --- a/benchmarks/bench_summary_template.nim +++ b/benchmarks/bench_summary_template.nim @@ -290,3 +290,10 @@ proc hashToCurveBN254SnarksG2Bench*(iters: int) = message = msg, domainSepTag = dst ) + +proc subgroupCheckBench*(EC: typedesc, iters: int) = + var P = rng.random_unsafe(EC) + P.clearCofactor() + + bench("Subgroup check", EC, iters): + discard P.isInSubgroup() \ No newline at end of file