Skip to content

Commit 1f62f58

Browse files
committed
Add benchmarks for ep_mul_sim_lot().
1 parent 3429421 commit 1f62f58

File tree

2 files changed

+78
-42
lines changed

2 files changed

+78
-42
lines changed

bench/bench_ep.c

Lines changed: 39 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ static void util(void) {
188188

189189
static void arith(void) {
190190
ep_t p, q, r, t[RLC_EP_TABLE_MAX];
191-
bn_t k, l, n;
191+
bn_t k, l[2], n;
192192

193193
ep_null(p);
194194
ep_null(q);
@@ -202,7 +202,8 @@ static void arith(void) {
202202
ep_new(r);
203203
bn_new(k);
204204
bn_new(n);
205-
bn_new(l);
205+
bn_new(l[0]);
206+
bn_new(l[1]);
206207

207208
ep_curve_get_ord(n);
208209

@@ -498,60 +499,76 @@ static void arith(void) {
498499
}
499500
#endif
500501
BENCH_RUN("ep_mul_sim") {
501-
bn_rand_mod(k, n);
502-
bn_rand_mod(l, n);
502+
bn_rand_mod(l[0], n);
503+
bn_rand_mod(l[1], n);
503504
ep_rand(p);
504505
ep_rand(q);
505-
BENCH_ADD(ep_mul_sim(r, p, k, q, l));
506+
BENCH_ADD(ep_mul_sim(r, p, l[0], q, l[1]));
506507
} BENCH_END;
507508

508509
#if EP_SIM == BASIC || !defined(STRIP)
509510
BENCH_RUN("ep_mul_sim_basic") {
510-
bn_rand_mod(k, n);
511-
bn_rand_mod(l, n);
511+
bn_rand_mod(l[0], n);
512+
bn_rand_mod(l[1], n);
512513
ep_rand(p);
513514
ep_rand(q);
514-
BENCH_ADD(ep_mul_sim_basic(r, p, k, q, l));
515+
BENCH_ADD(ep_mul_sim_basic(r, p, l[0], q, l[1]));
515516
} BENCH_END;
516517
#endif
517518

518519
#if EP_SIM == TRICK || !defined(STRIP)
519520
BENCH_RUN("ep_mul_sim_trick") {
520-
bn_rand_mod(k, n);
521-
bn_rand_mod(l, n);
521+
bn_rand_mod(l[0], n);
522+
bn_rand_mod(l[1], n);
522523
ep_rand(p);
523524
ep_rand(q);
524-
BENCH_ADD(ep_mul_sim_trick(r, p, k, q, l));
525+
BENCH_ADD(ep_mul_sim_trick(r, p, l[0], q, l[1]));
525526
} BENCH_END;
526527
#endif
527528

528529
#if EP_SIM == INTER || !defined(STRIP)
529530
BENCH_RUN("ep_mul_sim_inter") {
530-
bn_rand_mod(k, n);
531-
bn_rand_mod(l, n);
531+
bn_rand_mod(l[0], n);
532+
bn_rand_mod(l[1], n);
532533
ep_rand(p);
533534
ep_rand(q);
534-
BENCH_ADD(ep_mul_sim_inter(r, p, k, q, l));
535+
BENCH_ADD(ep_mul_sim_inter(r, p, l[0], q, l[1]));
535536
} BENCH_END;
536537
#endif
537538

538539
#if EP_SIM == JOINT || !defined(STRIP)
539540
BENCH_RUN("ep_mul_sim_joint") {
540-
bn_rand_mod(k, n);
541-
bn_rand_mod(l, n);
541+
bn_rand_mod(l[0], n);
542+
bn_rand_mod(l[1], n);
542543
ep_rand(p);
543544
ep_rand(q);
544-
BENCH_ADD(ep_mul_sim_joint(r, p, k, q, l));
545+
BENCH_ADD(ep_mul_sim_joint(r, p, l[0], q, l[1]));
545546
} BENCH_END;
546547
#endif
547548

548549
BENCH_RUN("ep_mul_sim_gen") {
549-
bn_rand_mod(k, n);
550-
bn_rand_mod(l, n);
550+
bn_rand_mod(l[0], n);
551+
bn_rand_mod(l[1], n);
551552
ep_rand(q);
552-
BENCH_ADD(ep_mul_sim_gen(r, k, q, l));
553+
BENCH_ADD(ep_mul_sim_gen(r, l[0], q, l[1]));
554+
} BENCH_END;
555+
556+
for (int i = 0; i < 2; i++) {
557+
ep_new(t[i]);
558+
}
559+
560+
BENCH_RUN("ep_mul_sim_lot (2)") {
561+
bn_rand_mod(l[0], n);
562+
bn_rand_mod(l[1], n);
563+
ep_rand(t[0]);
564+
ep_rand(t[1]);
565+
BENCH_ADD(ep_mul_sim_lot(r, t, l, 2));
553566
} BENCH_END;
554567

568+
for (int i = 0; i < 2; i++) {
569+
ep_free(t[i]);
570+
}
571+
555572
BENCH_RUN("ep_map") {
556573
uint8_t msg[5];
557574
rand_bytes(msg, 5);
@@ -572,7 +589,8 @@ static void arith(void) {
572589
ep_free(q);
573590
ep_free(r);
574591
bn_free(k);
575-
bn_free(l);
592+
bn_free(l[0]);
593+
bn_free(l[1]);
576594
bn_free(n);
577595
}
578596

bench/bench_epx.c

Lines changed: 39 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@ static void util2(void) {
180180

181181
static void arith2(void) {
182182
ep2_t p, q, r, t[RLC_EPX_TABLE_MAX];
183-
bn_t k, n, l;
183+
bn_t k, n, l[2];
184184
fp2_t s;
185185

186186
ep2_null(p);
@@ -198,7 +198,8 @@ static void arith2(void) {
198198
ep2_new(r);
199199
bn_new(k);
200200
bn_new(n);
201-
bn_new(l);
201+
bn_new(l[0]);
202+
bn_new(l[1]);
202203
fp2_new(s);
203204

204205
ep2_curve_get_ord(n);
@@ -467,60 +468,76 @@ static void arith2(void) {
467468
#endif
468469

469470
BENCH_RUN("ep2_mul_sim") {
470-
bn_rand_mod(k, n);
471-
bn_rand_mod(l, n);
471+
bn_rand_mod(l[0], n);
472+
bn_rand_mod(l[1], n);
472473
ep2_rand(p);
473474
ep2_rand(q);
474-
BENCH_ADD(ep2_mul_sim(r, p, k, q, l));
475+
BENCH_ADD(ep2_mul_sim(r, p, l[0], q, l[1]));
475476
} BENCH_END;
476477

477478
#if EP_SIM == BASIC || !defined(STRIP)
478479
BENCH_RUN("ep2_mul_sim_basic") {
479-
bn_rand_mod(k, n);
480-
bn_rand_mod(l, n);
480+
bn_rand_mod(l[0], n);
481+
bn_rand_mod(l[1], n);
481482
ep2_rand(p);
482483
ep2_rand(q);
483-
BENCH_ADD(ep2_mul_sim_basic(r, p, k, q, l));
484+
BENCH_ADD(ep2_mul_sim_basic(r, p, l[0], q, l[1]));
484485
} BENCH_END;
485486
#endif
486487

487488
#if EP_SIM == TRICK || !defined(STRIP)
488489
BENCH_RUN("ep2_mul_sim_trick") {
489-
bn_rand_mod(k, n);
490-
bn_rand_mod(l, n);
490+
bn_rand_mod(l[0], n);
491+
bn_rand_mod(l[1], n);
491492
ep2_rand(p);
492493
ep2_rand(q);
493-
BENCH_ADD(ep2_mul_sim_trick(r, p, k, q, l));
494+
BENCH_ADD(ep2_mul_sim_trick(r, p, l[0], q, l[1]));
494495
} BENCH_END;
495496
#endif
496497

497498
#if EP_SIM == INTER || !defined(STRIP)
498499
BENCH_RUN("ep2_mul_sim_inter") {
499-
bn_rand_mod(k, n);
500-
bn_rand_mod(l, n);
500+
bn_rand_mod(l[0], n);
501+
bn_rand_mod(l[1], n);
501502
ep2_rand(p);
502503
ep2_rand(q);
503-
BENCH_ADD(ep2_mul_sim_inter(r, p, k, q, l));
504+
BENCH_ADD(ep2_mul_sim_inter(r, p, l[0], q, l[1]));
504505
} BENCH_END;
505506
#endif
506507

507508
#if EP_SIM == JOINT || !defined(STRIP)
508509
BENCH_RUN("ep2_mul_sim_joint") {
509-
bn_rand_mod(k, n);
510-
bn_rand_mod(l, n);
510+
bn_rand_mod(l[0], n);
511+
bn_rand_mod(l[1], n);
511512
ep2_rand(p);
512513
ep2_rand(q);
513-
BENCH_ADD(ep2_mul_sim_joint(r, p, k, q, l));
514+
BENCH_ADD(ep2_mul_sim_joint(r, p, l[0], q, l[1]));
514515
} BENCH_END;
515516
#endif
516517

517518
BENCH_RUN("ep2_mul_sim_gen") {
518-
bn_rand_mod(k, n);
519-
bn_rand_mod(l, n);
519+
bn_rand_mod(l[0], n);
520+
bn_rand_mod(l[1], n);
520521
ep2_rand(q);
521-
BENCH_ADD(ep2_mul_sim_gen(r, k, q, l));
522+
BENCH_ADD(ep2_mul_sim_gen(r, l[0], q, l[1]));
523+
} BENCH_END;
524+
525+
for (int i = 0; i < 2; i++) {
526+
ep2_new(t[i]);
527+
}
528+
529+
BENCH_RUN("ep2_mul_sim_lot (2)") {
530+
bn_rand_mod(l[0], n);
531+
bn_rand_mod(l[1], n);
532+
ep2_rand(t[0]);
533+
ep2_rand(t[1]);
534+
BENCH_ADD(ep2_mul_sim_lot(r, t, l, 2));
522535
} BENCH_END;
523536

537+
for (int i = 0; i < 2; i++) {
538+
ep2_free(t[i]);
539+
}
540+
524541
BENCH_RUN("ep2_frb") {
525542
ep2_rand(q);
526543
BENCH_ADD(ep2_frb(r, q, 1));
@@ -547,7 +564,8 @@ static void arith2(void) {
547564
ep2_free(r);
548565
bn_free(k);
549566
bn_free(n);
550-
bn_free(l);
567+
bn_free(l[0]);
568+
bn_free(l[1]);
551569
fp2_free(s);
552570
}
553571

0 commit comments

Comments
 (0)