From 5e4fa8ead0b65cf1d6dc5252b7a9d04839b40c18 Mon Sep 17 00:00:00 2001 From: "Matthias J. Kannwischer" Date: Mon, 12 Aug 2024 16:33:40 +0800 Subject: [PATCH] add AIMer benchmarks --- benchmarks.csv | 28 ++++++++++++++++++++++++++++ benchmarks.md | 28 ++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+) diff --git a/benchmarks.csv b/benchmarks.csv index d8d518a1..11b3f777 100644 --- a/benchmarks.csv +++ b/benchmarks.csv @@ -19,6 +19,13 @@ kyber768 (10 executions),m4fspeed,631912,631599,632459,656455,656155,656969,7055 kyber768 (10 executions),m4fstack,634213,632786,644273,662556,661130,672615,712081,710655,722140 Signature Schemes,,,,,,,,,, Scheme,Implementation,Key Generation [cycles] (mean),Key Generation [cycles] (min),Key Generation [cycles] (max),Sign [cycles] (mean),Sign [cycles] (min),Sign [cycles] (max),Verify [cycles] (mean),Verify [cycles] (min),Verify [cycles] (max) +aimer128s (10 executions),mem_opt,564323,564323,564325,374834586,374834473,374834973,227230761,227230441,227230833 +aimer192f (10 executions),mem_opt,1397043,1397043,1397043,117993511,117991579,117995094,76372135,76370763,76373839 +aimer192f (10 executions),ref,1397040,1397040,1397041,81884026,81883991,81884035,76458825,76456517,76460984 +aimer192s (10 executions),mem_opt,1397047,1397039,1397079,916637185,916637133,916637425,629249382,629249345,629249415 +aimer256f (10 executions),mem_opt,3344254,3344250,3344255,233973308,233969892,233976707,170620601,170617448,170623743 +aimer256f (10 executions),ref,3344258,3344255,3344292,164484408,164483962,164484481,170648722,170647189,170651027 +aimer256s (10 executions),mem_opt,3344262,3344252,3344293,1752719642,1752719422,1752720844,1361337862,1361336718,1361338013 ascon-sign-128f-robust (10 executions),ref,122506162,122506099,122506254,2855797836,2855797243,2855798602,174707763,169973472,179525137 ascon-sign-128f-simple (10 executions),ref,69376878,69376875,69376883,1629111557,1629111334,1629112028,97798317,95509050,98714007 ascon-sign-128s-robust (10 executions),ref,7842366557,7842366432,7842366620,59267552580,59267543517,59267565672,60232378,57865239,62848708 @@ -170,6 +177,13 @@ kyber768,m4fspeed,5396,6468,6452,,,,,, kyber768,m4fstack,2820,2860,2844,,,,,, Signature Schemes,,,,,,,,,, Scheme,Implementation,Key Generation [bytes],Sign [bytes],Verify [bytes],,,,,, +aimer128s,mem_opt,8728,27324,34624,,,,,, +aimer192f,mem_opt,19192,29976,31608,,,,,, +aimer192f,ref,19192,273104,31608,,,,,, +aimer192s,mem_opt,19192,43220,60384,,,,,, +aimer256f,mem_opt,50040,77164,78568,,,,,, +aimer256f,ref,50040,573284,78716,,,,,, +aimer256s,mem_opt,50040,76140,117044,,,,,, ascon-sign-128f-robust,ref,3260,2772,2992,,,,,, ascon-sign-128f-simple,ref,2632,2144,2448,,,,,, ascon-sign-128s-robust,ref,3452,2916,2240,,,,,, @@ -322,6 +336,13 @@ kyber768,m4fspeed,75.4,74.4,69.2,,,,,, kyber768,m4fstack,75.3,73.8,68.7,,,,,, Signature Schemes,,,,,,,,,, Scheme,Implementation,Key Generation [%],Sign [%],Verify [%],,,,,, +aimer128s,mem_opt,50.6,67.9,50.2,,,,,, +aimer192f,mem_opt,53.5,56.4,40.5,,,,,, +aimer192f,ref,53.5,39.8,40.5,,,,,, +aimer192s,mem_opt,53.5,58.1,40.9,,,,,, +aimer256f,mem_opt,58.9,40.6,27.0,,,,,, +aimer256f,ref,58.9,28.0,27.0,,,,,, +aimer256s,mem_opt,58.9,42.4,27.2,,,,,, ascon-sign-128f-robust,ref,0.0,0.0,0.0,,,,,, ascon-sign-128f-simple,ref,0.0,0.0,0.0,,,,,, ascon-sign-128s-robust,ref,0.0,0.0,0.0,,,,,, @@ -473,6 +494,13 @@ kyber768,m4fspeed,15964,0,0,15964,,,,, kyber768,m4fstack,13288,0,0,13288,,,,, Signature Schemes,,,,,,,,,, Scheme,Implementation,.text [bytes],.data [bytes],.bss [bytes],Total [bytes],,,,, +aimer128s,mem_opt,17452,0,0,17452,,,,, +aimer192f,mem_opt,25384,0,0,25384,,,,, +aimer192f,ref,24956,0,0,24956,,,,, +aimer192s,mem_opt,25288,0,0,25288,,,,, +aimer256f,mem_opt,27804,0,0,27804,,,,, +aimer256f,ref,27304,0,0,27304,,,,, +aimer256s,mem_opt,27636,0,0,27636,,,,, ascon-sign-128f-robust,ref,17664,0,0,17664,,,,, ascon-sign-128f-simple,ref,17596,0,0,17596,,,,, ascon-sign-128s-robust,ref,17972,0,0,17972,,,,, diff --git a/benchmarks.md b/benchmarks.md index c9226748..fdf68d99 100644 --- a/benchmarks.md +++ b/benchmarks.md @@ -21,6 +21,13 @@ ## Signature Schemes | scheme | implementation | key generation [cycles] | sign [cycles] | verify [cycles] | | ------ | -------------- | ----------------------- | ------------- | --------------- | +| aimer128s (10 executions) | mem_opt | AVG: 564,323
MIN: 564,323
MAX: 564,325 | AVG: 374,834,586
MIN: 374,834,473
MAX: 374,834,973 | AVG: 227,230,761
MIN: 227,230,441
MAX: 227,230,833 | +| aimer192f (10 executions) | mem_opt | AVG: 1,397,043
MIN: 1,397,043
MAX: 1,397,043 | AVG: 117,993,511
MIN: 117,991,579
MAX: 117,995,094 | AVG: 76,372,135
MIN: 76,370,763
MAX: 76,373,839 | +| aimer192f (10 executions) | ref | AVG: 1,397,040
MIN: 1,397,040
MAX: 1,397,041 | AVG: 81,884,026
MIN: 81,883,991
MAX: 81,884,035 | AVG: 76,458,825
MIN: 76,456,517
MAX: 76,460,984 | +| aimer192s (10 executions) | mem_opt | AVG: 1,397,047
MIN: 1,397,039
MAX: 1,397,079 | AVG: 916,637,185
MIN: 916,637,133
MAX: 916,637,425 | AVG: 629,249,382
MIN: 629,249,345
MAX: 629,249,415 | +| aimer256f (10 executions) | mem_opt | AVG: 3,344,254
MIN: 3,344,250
MAX: 3,344,255 | AVG: 233,973,308
MIN: 233,969,892
MAX: 233,976,707 | AVG: 170,620,601
MIN: 170,617,448
MAX: 170,623,743 | +| aimer256f (10 executions) | ref | AVG: 3,344,258
MIN: 3,344,255
MAX: 3,344,292 | AVG: 164,484,408
MIN: 164,483,962
MAX: 164,484,481 | AVG: 170,648,722
MIN: 170,647,189
MAX: 170,651,027 | +| aimer256s (10 executions) | mem_opt | AVG: 3,344,262
MIN: 3,344,252
MAX: 3,344,293 | AVG: 1,752,719,642
MIN: 1,752,719,422
MAX: 1,752,720,844 | AVG: 1,361,337,862
MIN: 1,361,336,718
MAX: 1,361,338,013 | | ascon-sign-128f-robust (10 executions) | ref | AVG: 122,506,162
MIN: 122,506,099
MAX: 122,506,254 | AVG: 2,855,797,836
MIN: 2,855,797,243
MAX: 2,855,798,602 | AVG: 174,707,763
MIN: 169,973,472
MAX: 179,525,137 | | ascon-sign-128f-simple (10 executions) | ref | AVG: 69,376,878
MIN: 69,376,875
MAX: 69,376,883 | AVG: 1,629,111,557
MIN: 1,629,111,334
MAX: 1,629,112,028 | AVG: 97,798,317
MIN: 95,509,050
MAX: 98,714,007 | | ascon-sign-128s-robust (10 executions) | ref | AVG: 7,842,366,557
MIN: 7,842,366,432
MAX: 7,842,366,620 | AVG: 59,267,552,580
MIN: 59,267,543,517
MAX: 59,267,565,672 | AVG: 60,232,378
MIN: 57,865,239
MAX: 62,848,708 | @@ -174,6 +181,13 @@ ## Signature Schemes | Scheme | Implementation | Key Generation [bytes] | Sign [bytes] | Verify [bytes] | | ------ | -------------- | ---------------------- | ------------ | -------------- | +| aimer128s | mem_opt | 8,728 | 27,324 | 34,624 | +| aimer192f | mem_opt | 19,192 | 29,976 | 31,608 | +| aimer192f | ref | 19,192 | 273,104 | 31,608 | +| aimer192s | mem_opt | 19,192 | 43,220 | 60,384 | +| aimer256f | mem_opt | 50,040 | 77,164 | 78,568 | +| aimer256f | ref | 50,040 | 573,284 | 78,716 | +| aimer256s | mem_opt | 50,040 | 76,140 | 117,044 | | ascon-sign-128f-robust | ref | 3,260 | 2,772 | 2,992 | | ascon-sign-128f-simple | ref | 2,632 | 2,144 | 2,448 | | ascon-sign-128s-robust | ref | 3,452 | 2,916 | 2,240 | @@ -328,6 +342,13 @@ ## Signature Schemes | Scheme | Implementation | Key Generation [%] | Sign [%] | Verify [%] | | ------ | -------------- | ------------------ | -------- | ---------- | +| aimer128s | mem_opt | 50.6% | 67.9% | 50.2% | +| aimer192f | mem_opt | 53.5% | 56.4% | 40.5% | +| aimer192f | ref | 53.5% | 39.8% | 40.5% | +| aimer192s | mem_opt | 53.5% | 58.1% | 40.9% | +| aimer256f | mem_opt | 58.9% | 40.6% | 27.0% | +| aimer256f | ref | 58.9% | 28.0% | 27.0% | +| aimer256s | mem_opt | 58.9% | 42.4% | 27.2% | | ascon-sign-128f-robust | ref | 0.0% | 0.0% | 0.0% | | ascon-sign-128f-simple | ref | 0.0% | 0.0% | 0.0% | | ascon-sign-128s-robust | ref | 0.0% | 0.0% | 0.0% | @@ -481,6 +502,13 @@ ## Signature Schemes | Scheme | Implementation | .text [bytes] | .data [bytes] | .bss [bytes] | Total [bytes] | | ------ | -------------- | ------------- | ------------- | ------------ | ------------- | +| aimer128s | mem_opt | 17,452 | 0 | 0 | 17,452 | +| aimer192f | mem_opt | 25,384 | 0 | 0 | 25,384 | +| aimer192f | ref | 24,956 | 0 | 0 | 24,956 | +| aimer192s | mem_opt | 25,288 | 0 | 0 | 25,288 | +| aimer256f | mem_opt | 27,804 | 0 | 0 | 27,804 | +| aimer256f | ref | 27,304 | 0 | 0 | 27,304 | +| aimer256s | mem_opt | 27,636 | 0 | 0 | 27,636 | | ascon-sign-128f-robust | ref | 17,664 | 0 | 0 | 17,664 | | ascon-sign-128f-simple | ref | 17,596 | 0 | 0 | 17,596 | | ascon-sign-128s-robust | ref | 17,972 | 0 | 0 | 17,972 |