Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Benchmark SPHINCS+ #8

Merged
merged 6 commits into from
Nov 24, 2022
Merged

Benchmark SPHINCS+ #8

merged 6 commits into from
Nov 24, 2022

Conversation

itzmeanjan
Copy link
Owner

Benchmark SPHINCS+ keygen, sign and verify routines, for various parameter sets, using google-benchmark.


Benchmark results on Intel(R) Core(TM) i5-8279U CPU @ 2.40GHz, issue

make benchmark
2022-11-24T17:56:30+04:00
Running ./bench/a.out
Run on (8 X 2400 MHz CPU s)
CPU Caches:
  L1 Data 32 KiB
  L1 Instruction 32 KiB
  L2 Unified 256 KiB (x4)
  L3 Unified 6144 KiB
Load Average: 1.68, 2.21, 2.23
------------------------------------------------------------------------------------------------------------------------
Benchmark                                                              Time             CPU   Iterations UserCounters...
------------------------------------------------------------------------------------------------------------------------
bench_sphincs::keygen<16, 63, 7, 16, variant::robust>          223865189 ns    223551667 ns            3 items_per_second=4.47324/s
bench_sphincs::sign<16, 63, 7, 12, 14, 16, variant::robust>   1673343333 ns   1672366000 ns            1 items_per_second=0.597955/s
bench_sphincs::verify<16, 63, 7, 12, 14, 16, variant::robust>    1624058 ns      1622867 ns          383 items_per_second=616.194/s
bench_sphincs::keygen<16, 63, 7, 16, variant::simple>          114910381 ns    114836000 ns            6 items_per_second=8.70807/s
bench_sphincs::sign<16, 63, 7, 12, 14, 16, variant::simple>    870889893 ns    870356000 ns            1 items_per_second=1.14896/s
bench_sphincs::verify<16, 63, 7, 12, 14, 16, variant::simple>     919948 ns       889686 ns          821 items_per_second=1.12399k/s
bench_sphincs::keygen<16, 66, 22, 16, variant::robust>           3519567 ns      3517101 ns          199 items_per_second=284.325/s
bench_sphincs::sign<16, 66, 22, 6, 33, 16, variant::robust>     83328184 ns     83158375 ns            8 items_per_second=12.0252/s
bench_sphincs::verify<16, 66, 22, 6, 33, 16, variant::robust>    5011455 ns      5010190 ns          100 items_per_second=199.593/s
bench_sphincs::keygen<16, 66, 22, 16, variant::simple>           1838696 ns      1837453 ns          375 items_per_second=544.232/s
bench_sphincs::sign<16, 66, 22, 6, 33, 16, variant::simple>     42009972 ns     41976941 ns           17 items_per_second=23.8226/s
bench_sphincs::verify<16, 66, 22, 6, 33, 16, variant::simple>    2530698 ns      2529193 ns          274 items_per_second=395.383/s
bench_sphincs::keygen<24, 63, 7, 16, variant::robust>          322501013 ns    322310000 ns            2 items_per_second=3.1026/s
bench_sphincs::sign<24, 63, 7, 14, 17, 16, variant::robust>   2932460616 ns   2930447000 ns            1 items_per_second=0.341245/s
bench_sphincs::verify<24, 63, 7, 14, 17, 16, variant::robust>    2655033 ns      2653484 ns          275 items_per_second=376.863/s
bench_sphincs::keygen<24, 63, 7, 16, variant::simple>          167973781 ns    167865500 ns            4 items_per_second=5.95715/s
bench_sphincs::sign<24, 63, 7, 14, 17, 16, variant::simple>   1515394867 ns   1514429000 ns            1 items_per_second=0.660315/s
bench_sphincs::verify<24, 63, 7, 14, 17, 16, variant::simple>    1335074 ns      1334090 ns          543 items_per_second=749.574/s
bench_sphincs::keygen<24, 66, 22, 16, variant::robust>           5171228 ns      5166667 ns          135 items_per_second=193.548/s
bench_sphincs::sign<24, 66, 22, 8, 33, 16, variant::robust>    131464221 ns    131349800 ns            5 items_per_second=7.61326/s
bench_sphincs::verify<24, 66, 22, 8, 33, 16, variant::robust>    7344868 ns      7336526 ns           97 items_per_second=136.304/s
bench_sphincs::keygen<24, 66, 22, 16, variant::simple>           2718596 ns      2715891 ns          257 items_per_second=368.203/s
bench_sphincs::sign<24, 66, 22, 8, 33, 16, variant::simple>     68116879 ns     68079900 ns           10 items_per_second=14.6886/s
bench_sphincs::verify<24, 66, 22, 8, 33, 16, variant::simple>    3708584 ns      3705747 ns          190 items_per_second=269.851/s
bench_sphincs::keygen<32, 64, 8, 16, variant::robust>          214403107 ns    214250333 ns            3 items_per_second=4.66744/s
bench_sphincs::sign<32, 64, 8, 14, 22, 16, variant::robust>   2655703720 ns   2618478000 ns            1 items_per_second=0.381901/s
bench_sphincs::verify<32, 64, 8, 14, 22, 16, variant::robust>    3749786 ns      3747871 ns          186 items_per_second=266.818/s
bench_sphincs::keygen<32, 64, 8, 16, variant::simple>          110564633 ns    110483333 ns            6 items_per_second=9.05114/s
bench_sphincs::sign<32, 64, 8, 14, 22, 16, variant::simple>   1322491828 ns   1321609000 ns            1 items_per_second=0.756653/s
bench_sphincs::verify<32, 64, 8, 14, 22, 16, variant::simple>    1845741 ns      1843675 ns          326 items_per_second=542.395/s
bench_sphincs::keygen<32, 68, 17, 16, variant::robust>          14471887 ns     13960647 ns           51 items_per_second=71.6299/s
bench_sphincs::sign<32, 68, 17, 9, 35, 16, variant::robust>    272581306 ns    272364333 ns            3 items_per_second=3.67155/s
bench_sphincs::verify<32, 68, 17, 9, 35, 16, variant::robust>    7987809 ns      7970346 ns           81 items_per_second=125.465/s
bench_sphincs::keygen<32, 68, 17, 16, variant::simple>           7482949 ns      7231433 ns           97 items_per_second=138.285/s
bench_sphincs::sign<32, 68, 17, 9, 35, 16, variant::simple>    139193350 ns    139062200 ns            5 items_per_second=7.19103/s
bench_sphincs::verify<32, 68, 17, 9, 35, 16, variant::simple>    3758632 ns      3755781 ns          187 items_per_second=266.256/s

@itzmeanjan itzmeanjan merged commit 3204e01 into sphincs+ Nov 24, 2022
@itzmeanjan itzmeanjan deleted the bench-sphincs+ branch November 24, 2022 14:05
@itzmeanjan itzmeanjan mentioned this pull request Nov 24, 2022
4 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant