Skip to content

Commit

Permalink
Use different FP registers, fix iNTT range (#234)
Browse files Browse the repository at this point in the history
* different fp registers, fix iNTT range

* Remove redundant packing of signature component 'z'

* benchmarks

Co-authored-by: Alexandre Adomnicai <alex.adomnicai@gmail.com>
Co-authored-by: Matthias J. Kannwischer <matthias@kannwischer.eu>
  • Loading branch information
3 people authored May 10, 2022
1 parent 6182ab3 commit 0b50e72
Show file tree
Hide file tree
Showing 18 changed files with 232 additions and 228 deletions.
66 changes: 33 additions & 33 deletions benchmarks.csv
Original file line number Diff line number Diff line change
Expand Up @@ -11,23 +11,23 @@ frodokem640shake (100 executions),m4,77984424,77835411,77989050,78893964,7889393
frodokem640shake (100 executions),opt,90654791,90654775,90654814,104138444,104138419,104138534,103834288,103834251,103834338
hqc-rmrs-128 (100 executions),clean,2967262,2924920,3153007,5415022,5325331,5590378,7845462,7713583,8205411
kyber1024 (100 executions),clean,1637602,1635186,1649476,2010657,2008239,2022536,2148861,2146442,2160739
kyber1024 (100 executions),m4fspeed,1146506,1144173,1170735,1334375,1332046,1358608,1237498,1235169,1261731
kyber1024 (100 executions),m4fstack,1154566,1152611,1166824,1346343,1344384,1358597,1251026,1249067,1263280
kyber1024 (100 executions),m4fspeed,1147546,1144075,1171003,1335403,1331934,1358861,1238542,1235073,1262000
kyber1024 (100 executions),m4fstack,1155599,1152703,1178851,1347359,1344461,1370611,1252058,1249160,1275310
kyber1024-90s (100 executions),clean,3002358,3000594,3017386,3278118,3276347,3293172,3511420,3509649,3526441
kyber1024-90s (100 executions),m4fspeed,995987,988645,1000850,1088634,1081292,1093497,1086861,1079552,1091724
kyber1024-90s (100 executions),m4fstack,1006908,999573,1009607,1103436,1096101,1106135,1103215,1095880,1105914
kyber512 (100 executions),clean,631058,630445,643862,842478,841864,855281,936458,935844,949261
kyber512 (100 executions),m4fspeed,441489,440447,454135,540354,539311,553000,491034,489992,503681
kyber512 (100 executions),m4fstack,441712,441068,454552,542251,541606,555090,493434,492790,506274
kyber512 (100 executions),m4fspeed,440960,440407,441438,539817,539265,540330,490506,489954,490985
kyber512 (100 executions),m4fstack,441893,441124,454585,542424,541653,555082,493616,492845,506274
kyber512-90s (100 executions),clean,944546,944075,944961,1114167,1113662,1114581,1259241,1258736,1259655
kyber512-90s (100 executions),m4fspeed,376946,372781,381569,434013,429848,438636,435784,431618,440406
kyber512-90s (100 executions),m4fstack,377943,370186,378865,436682,428925,437604,438958,431201,439880
kyber512-90s (100 executions),m4fspeed,376872,372758,381423,433931,429818,438482,435709,431596,440260
kyber512-90s (100 executions),m4fstack,378094,373957,382653,436828,432691,441386,439111,434974,443669
kyber768 (100 executions),clean,1051021,1049570,1063275,1349400,1347982,1361620,1463791,1462338,1476010
kyber768 (100 executions),m4fspeed,723575,722237,736565,877501,876197,890491,803740,802401,816729
kyber768 (100 executions),m4fstack,728304,725897,740275,884925,882518,896896,812180,809773,824151
kyber768 (100 executions),m4fspeed,724775,722419,748971,878689,876333,902884,804940,802583,829134
kyber768 (100 executions),m4fstack,727958,725958,752786,884567,882566,909395,811833,809833,836662
kyber768-90s (100 executions),clean,1811726,1810670,1827045,2034922,2033865,2050240,2222406,2221348,2237723
kyber768-90s (100 executions),m4fspeed,632398,621252,638272,711096,699950,717003,710430,699284,716304
kyber768-90s (100 executions),m4fstack,638129,630786,643556,719513,712171,724940,719862,712520,725289
kyber768-90s (100 executions),m4fspeed,632999,628813,638215,711686,707500,716901,711031,706845,716246
kyber768-90s (100 executions),m4fstack,638316,630857,643504,719690,712230,724877,720051,712592,725239
lightsaber (100 executions),clean,1023162,1023162,1023163,1494462,1494456,1494495,1805694,1805691,1805725
lightsaber (100 executions),m4fspeed,352196,352196,352229,481006,481005,481038,452654,452653,452687
lightsaber (100 executions),m4fstack,422434,422434,422467,591556,591555,591588,581073,581072,581106
Expand Down Expand Up @@ -77,12 +77,12 @@ sntrup953 (100 executions),m4f,12761557,12761535,12761571,943350,943350,943350,7
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)
dilithium2 (100 executions),clean,1976311,1934124,2022613,7465108,3241343,29601126,2109292,2108823,2109692
dilithium2 (10000 executions),m4f,1597282,1543011,1644501,4119336,1983077,34081046,1572328,1571561,1572863
dilithium2 (10000 executions),m4f,1597200,1542979,1644602,4095865,1973993,23877766,1572329,1571611,1572899
dilithium2aes (100 executions),clean,5153665,5109045,5227715,12016668,6375642,28738015,4824282,4779372,4898600
dilithium3 (100 executions),clean,3414513,3413395,3416061,11722059,5037981,36169675,3499388,3498955,3499805
dilithium3 (10000 executions),m4f,2829260,2827405,2842880,6652990,3235358,42043815,2691471,2690861,2691949
dilithium3 (10000 executions),m4f,2829250,2827244,2831235,6610160,3222476,33943453,2691469,2690961,2691943
dilithium3aes (100 executions),clean,9258325,9166749,9369734,19417325,10745071,60023085,8581938,8491758,8694807
dilithium5 (10000 executions),m4f,4826132,4737167,4901952,8817385,5433369,40315104,4705982,4705308,4706614
dilithium5 (10000 executions),m4f,4826293,4737193,4901769,8767067,5413471,45368141,4705981,4705302,4706551
falcon-1024 (100 executions),clean,582455197,338850289,1754663445,133655078,133335905,133985773,1526901,1526233,1527648
falcon-1024 (100 executions),m4-ct,458300837,273960881,1558842038,85160712,84941964,85410952,977811,966969,985555
falcon-1024 (100 executions),opt-ct,445577914,273960881,1180316927,85152483,84871257,85396462,978443,966990,985220
Expand Down Expand Up @@ -214,11 +214,11 @@ Signature Schemes,,,,,,,,,,
Scheme,Implementation,Key Generation [bytes],Sign [bytes],Verify [bytes],,,,,,
dilithium2,clean,38284,51908,36196,,,,,,
dilithium2aes,clean,39764,53388,37676,,,,,,
dilithium2,m4f,38276,49356,36296,,,,,,
dilithium2,m4f,38276,49356,36188,,,,,,
dilithium3,clean,60812,79664,57700,,,,,,
dilithium3aes,clean,62292,81036,59180,,,,,,
dilithium3,m4f,60804,68804,57692,,,,,,
dilithium5,m4f,97776,116016,92872,,,,,,
dilithium5,m4f,97668,115908,92764,,,,,,
falcon-1024,clean,36264,82428,8796,,,,,,
falcon-1024,m4-ct,1488,2568,496,,,,,,
falcon-1024,opt-ct,1448,2568,388,,,,,,
Expand Down Expand Up @@ -292,13 +292,13 @@ kyber512,clean,54.7,51.7,37.1,,,,,,
kyber512,m4fspeed,78.1,80.5,70.6,,,,,,
kyber512,m4fstack,78.0,80.2,70.2,,,,,,
kyber512-90s,clean,68.8,62.8,52.7,,,,,,
kyber512-90s,m4fspeed,71.0,72.8,64.2,,,,,,
kyber512-90s,m4fspeed,71.1,72.8,64.2,,,,,,
kyber512-90s,m4fstack,70.8,72.3,63.7,,,,,,
kyber768,clean,52.8,52.4,39.7,,,,,,
kyber768,m4fspeed,76.5,80.3,72.0,,,,,,
kyber768,m4fstack,76.1,79.8,71.4,,,,,,
kyber768-90s,clean,71.5,67.4,59.5,,,,,,
kyber768-90s,m4fspeed,68.8,71.8,64.8,,,,,,
kyber768-90s,m4fspeed,68.9,71.8,64.8,,,,,,
kyber768-90s,m4fstack,68.3,71.1,64.0,,,,,,
lightsaber,clean,24.9,23.8,15.5,,,,,,
lightsaber,m4fspeed,72.3,74.0,61.9,,,,,,
Expand Down Expand Up @@ -350,11 +350,11 @@ Signature Schemes,,,,,,,,,,
Scheme,Implementation,Key Generation [%],Sign [%],Verify [%],,,,,,
dilithium2,clean,67.1,37.3,60.1,,,,,,
dilithium2aes,clean,2.7,3.3,5.0,,,,,,
dilithium2,m4f,82.8,65.2,80.4,,,,,,
dilithium2,m4f,82.8,66.6,80.4,,,,,,
dilithium3,clean,70.5,37.0,63.6,,,,,,
dilithium3aes,clean,2.2,2.5,3.5,,,,,,
dilithium3,m4f,85.0,64.4,82.6,,,,,,
dilithium5,m4f,86.0,69.1,84.5,,,,,,
dilithium3,m4f,85.0,64.7,82.6,,,,,,
dilithium5,m4f,86.0,69.7,84.5,,,,,,
falcon-1024,clean,8.4,0.3,26.9,,,,,,
falcon-1024,m4-ct,10.6,0.5,34.2,,,,,,
falcon-1024,opt-ct,11.1,0.5,34.3,,,,,,
Expand Down Expand Up @@ -419,23 +419,23 @@ frodokem640shake,m4,8644,0,0,8644,,,,,
frodokem640shake,opt,6796,0,0,6796,,,,,
hqc-rmrs-128,clean,18436,0,0,18436,,,,,
kyber1024,clean,6084,0,0,6084,,,,,
kyber1024,m4fspeed,18324,0,0,18324,,,,,
kyber1024,m4fstack,15452,0,0,15452,,,,,
kyber1024,m4fspeed,18332,0,0,18332,,,,,
kyber1024,m4fstack,15460,0,0,15460,,,,,
kyber1024-90s,clean,6468,0,0,6468,,,,,
kyber1024-90s,m4fspeed,18832,0,0,18832,,,,,
kyber1024-90s,m4fstack,15744,0,0,15744,,,,,
kyber512,clean,4900,0,0,4900,,,,,
kyber512,m4fspeed,17220,0,0,17220,,,,,
kyber512,m4fstack,14624,0,0,14624,,,,,
kyber512,m4fspeed,17228,0,0,17228,,,,,
kyber512,m4fstack,14632,0,0,14632,,,,,
kyber512-90s,clean,5144,0,0,5144,,,,,
kyber512-90s,m4fspeed,17728,0,0,17728,,,,,
kyber512-90s,m4fstack,14900,0,0,14900,,,,,
kyber512-90s,m4fspeed,17736,0,0,17736,,,,,
kyber512-90s,m4fstack,14908,0,0,14908,,,,,
kyber768,clean,4912,0,0,4912,,,,,
kyber768,m4fspeed,17532,0,0,17532,,,,,
kyber768,m4fstack,14528,0,0,14528,,,,,
kyber768,m4fspeed,17540,0,0,17540,,,,,
kyber768,m4fstack,14536,0,0,14536,,,,,
kyber768-90s,clean,5176,0,0,5176,,,,,
kyber768-90s,m4fspeed,18064,0,0,18064,,,,,
kyber768-90s,m4fstack,14784,0,0,14784,,,,,
kyber768-90s,m4fspeed,18072,0,0,18072,,,,,
kyber768-90s,m4fstack,14792,0,0,14792,,,,,
lightsaber,clean,10368,0,0,10368,,,,,
lightsaber,m4fspeed,18900,0,0,18900,,,,,
lightsaber,m4fstack,19712,0,0,19712,,,,,
Expand Down Expand Up @@ -486,11 +486,11 @@ Signature Schemes,,,,,,,,,,
Scheme,Implementation,.text [bytes],.data [bytes],.bss [bytes],Total [bytes],,,,,
dilithium2,clean,7948,0,0,7948,,,,,
dilithium2aes,clean,14982,0,0,14982,,,,,
dilithium2,m4f,18440,0,0,18440,,,,,
dilithium2,m4f,18424,0,0,18424,,,,,
dilithium3,clean,7444,0,0,7444,,,,,
dilithium3aes,clean,14470,0,0,14470,,,,,
dilithium3,m4f,19912,0,0,19912,,,,,
dilithium5,m4f,18236,0,0,18236,,,,,
dilithium3,m4f,19904,0,0,19904,,,,,
dilithium5,m4f,18220,0,0,18220,,,,,
falcon-1024,clean,82285,0,0,82285,,,,,
falcon-1024,m4-ct,81265,0,79872,161137,,,,,
falcon-1024,opt-ct,81265,0,79872,161137,,,,,
Expand Down
Loading

0 comments on commit 0b50e72

Please sign in to comment.