Implement RSA PSS verification#2500
Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
There was a problem hiding this comment.
Benchmark (macos/llvm)
Details
| Benchmark suite | Current: 3be8f24 | Previous: 8ca19da | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.0270906393189323 ns/iter |
1.5851738125309476 ns/iter |
1.28 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.8795274751439832 ns/iter |
1.7329777609181012 ns/iter |
1.08 |
Regex_Period_Asterisk |
2.0047563057205404 ns/iter |
1.6071988267807822 ns/iter |
1.25 |
Regex_Group_Period_Asterisk_Group |
2.0551557313027193 ns/iter |
1.587183521958921 ns/iter |
1.29 |
Regex_Period_Plus |
2.6172248845280417 ns/iter |
1.8972423203120055 ns/iter |
1.38 |
Regex_Period |
2.61442161285848 ns/iter |
2.0069702037981956 ns/iter |
1.30 |
Regex_Caret_Period_Plus_Dollar |
2.4068375070156973 ns/iter |
1.937058000081587 ns/iter |
1.24 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.462873405203168 ns/iter |
1.9221793135561385 ns/iter |
1.28 |
Regex_Caret_Period_Asterisk_Dollar |
2.2832663130703796 ns/iter |
1.6214443654540598 ns/iter |
1.41 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.9261180654704029 ns/iter |
1.6247688038566384 ns/iter |
1.19 |
Regex_Caret_X_Hyphen |
7.696774767193287 ns/iter |
5.947169530121635 ns/iter |
1.29 |
Regex_Period_Md_Dollar |
19.889911337358736 ns/iter |
16.453434986240353 ns/iter |
1.21 |
Regex_Caret_Slash_Period_Asterisk |
4.7184078090385935 ns/iter |
4.599155735824056 ns/iter |
1.03 |
Regex_Caret_Period_Range_Dollar |
2.2095126683104414 ns/iter |
2.096643470911868 ns/iter |
1.05 |
Regex_Nested_Backtrack |
28.950239838215442 ns/iter |
25.164727360731366 ns/iter |
1.15 |
JSON_Array_Of_Objects_Unique |
374.6555609889455 ns/iter |
315.3137585172685 ns/iter |
1.19 |
JSON_Parse_1 |
4239.107893027713 ns/iter |
3341.5657393635893 ns/iter |
1.27 |
JSON_Parse_Real |
5803.59638256057 ns/iter |
5087.880692564923 ns/iter |
1.14 |
JSON_Parse_Decimal |
6056.130813438152 ns/iter |
6509.1516886010195 ns/iter |
0.93 |
JSON_Parse_Schema_ISO_Language |
5045610.125000013 ns/iter |
3234781.828704024 ns/iter |
1.56 |
JSON_Parse_Integer |
3895.2659001616144 ns/iter |
3320.750237849075 ns/iter |
1.17 |
JSON_Parse_String_NonSSO_Plain |
3717.892249418673 ns/iter |
3642.5534959589822 ns/iter |
1.02 |
JSON_Parse_String_SSO_Plain |
2036.1705280024648 ns/iter |
1914.4488606740288 ns/iter |
1.06 |
JSON_Parse_String_Escape_Heavy |
16460.072625826735 ns/iter |
16887.473859338985 ns/iter |
0.97 |
JSON_Parse_Object_Short_Keys |
5866.133495166357 ns/iter |
5207.0489304098155 ns/iter |
1.13 |
JSON_Parse_Object_Scalar_Properties |
2899.4640621038156 ns/iter |
2733.8300770354226 ns/iter |
1.06 |
JSON_Parse_Object_Array_Properties |
3699.725440962969 ns/iter |
3599.749043708713 ns/iter |
1.03 |
JSON_Parse_Object_Object_Properties |
4574.941781287628 ns/iter |
3752.027774206302 ns/iter |
1.22 |
JSON_Parse_Nested_Containers |
33188.46023462086 ns/iter |
29096.806819097492 ns/iter |
1.14 |
JSON_From_String_Copy |
32.60098216101953 ns/iter |
27.048374310527755 ns/iter |
1.21 |
JSON_From_String_Temporary |
26.079647153368917 ns/iter |
25.77888495878468 ns/iter |
1.01 |
JSON_Number_To_Double |
45.51696985976497 ns/iter |
35.58087341433089 ns/iter |
1.28 |
JSON_Object_At_Last_Key/8 |
5.5341319869985215 ns/iter |
3.5462222066883733 ns/iter |
1.56 |
JSON_Object_At_Last_Key/32 |
14.245700792207192 ns/iter |
11.092935698121057 ns/iter |
1.28 |
JSON_Object_At_Last_Key/128 |
72.43498215224957 ns/iter |
51.09717499999533 ns/iter |
1.42 |
JSON_Object_At_Last_Key/512 |
254.59814558445112 ns/iter |
181.3058654751681 ns/iter |
1.40 |
JSON_Fast_Hash_Helm_Chart_Lock |
68.05729651557112 ns/iter |
57.37680845143612 ns/iter |
1.19 |
JSON_Equality_Helm_Chart_Lock |
158.04728850510918 ns/iter |
125.43962474234841 ns/iter |
1.26 |
JSON_Divisible_By_Decimal |
203.82570837406257 ns/iter |
162.42036974051098 ns/iter |
1.25 |
JSON_String_Equal/10 |
7.52808374203002 ns/iter |
6.570366811249728 ns/iter |
1.15 |
JSON_String_Equal/100 |
6.4230146657652325 ns/iter |
6.084460098425337 ns/iter |
1.06 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7662831479196123 ns/iter |
0.7166781335507084 ns/iter |
1.07 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
3.7519816732012203 ns/iter |
3.128200259660244 ns/iter |
1.20 |
JSON_String_Fast_Hash/10 |
3.1719116383612485 ns/iter |
2.2063462867907027 ns/iter |
1.44 |
JSON_String_Fast_Hash/100 |
3.1479489168890287 ns/iter |
1.9007101466580465 ns/iter |
1.66 |
JSON_String_Key_Hash/10 |
1.7094928297714795 ns/iter |
1.270680102976218 ns/iter |
1.35 |
JSON_String_Key_Hash/100 |
4.180135910056191 ns/iter |
2.006037925175252 ns/iter |
2.08 |
JSON_Object_Defines_Miss_Same_Length |
4.310655192686274 ns/iter |
2.1945228517384177 ns/iter |
1.96 |
JSON_Object_Defines_Miss_Too_Small |
2.6244597771135205 ns/iter |
2.274277341866831 ns/iter |
1.15 |
JSON_Object_Defines_Miss_Too_Large |
2.54147193828489 ns/iter |
2.2190564283440515 ns/iter |
1.15 |
Pointer_Object_Traverse |
14.51537469007417 ns/iter |
12.949031442299894 ns/iter |
1.12 |
Pointer_Object_Try_Traverse |
24.607206621952557 ns/iter |
26.019620893316848 ns/iter |
0.95 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
168.00127865105202 ns/iter |
147.04440586805035 ns/iter |
1.14 |
Pointer_Walker_Schema_ISO_Language |
2806523.544715833 ns/iter |
2012461.6496813055 ns/iter |
1.39 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
994630.2887027839 ns/iter |
834436.3155984473 ns/iter |
1.19 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1147013.1578946426 ns/iter |
1112583.3978495097 ns/iter |
1.03 |
Pointer_Position_Tracker_Get_Deeply_Nested |
365.61443076217824 ns/iter |
323.30773574329413 ns/iter |
1.13 |
URITemplateRouter_Create |
23186.983282134173 ns/iter |
21447.242500458895 ns/iter |
1.08 |
URITemplateRouter_Match |
161.82084561289548 ns/iter |
150.6497713103821 ns/iter |
1.07 |
URITemplateRouter_Match_BasePath |
189.03385464067551 ns/iter |
176.98435312003775 ns/iter |
1.07 |
URITemplateRouterView_Restore |
9536.092440377473 ns/iter |
8683.292017609929 ns/iter |
1.10 |
URITemplateRouterView_Match |
137.69372835373827 ns/iter |
125.33478253280427 ns/iter |
1.10 |
URITemplateRouterView_Match_BasePath |
156.67676759736946 ns/iter |
139.6066368723689 ns/iter |
1.12 |
URITemplateRouterView_Arguments |
416.54454606914254 ns/iter |
379.04376792580547 ns/iter |
1.10 |
JSONL_Parse_Large |
13333109.090907866 ns/iter |
11662619.450000497 ns/iter |
1.14 |
JSONL_Parse_Large_GZIP |
15067008.872341964 ns/iter |
12948720.250000585 ns/iter |
1.16 |
HTML_Build_Table_100000 |
67014812.5000054 ns/iter |
59475295.454541825 ns/iter |
1.13 |
HTML_Render_Table_100000 |
4126294.3729732893 ns/iter |
2554115.2420636253 ns/iter |
1.62 |
GZIP_Compress_ISO_Language_Set_3_Locations |
30233029.000002082 ns/iter |
24599895.8214305 ns/iter |
1.23 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
5638447.065573697 ns/iter |
4630601.791946572 ns/iter |
1.22 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1500787.37339038 ns/iter |
1498928.2031870766 ns/iter |
1.00 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
268206.7605794702 ns/iter |
261010.39282986952 ns/iter |
1.03 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (linux/gcc)
Details
| Benchmark suite | Current: 3be8f24 | Previous: 8ca19da | Ratio |
|---|---|---|---|
GZIP_Compress_ISO_Language_Set_3_Locations |
39392073.833331175 ns/iter |
36530165.947373174 ns/iter |
1.08 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4040312.7803467284 ns/iter |
4493190.925000334 ns/iter |
0.90 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2269824.2435067245 ns/iter |
2015859.5389049817 ns/iter |
1.13 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
326870.2727272941 ns/iter |
380929.75027204474 ns/iter |
0.86 |
HTML_Build_Table_100000 |
73179884.70000501 ns/iter |
60791150.45454066 ns/iter |
1.20 |
HTML_Render_Table_100000 |
2092920.3134328283 ns/iter |
2013440.3304844953 ns/iter |
1.04 |
JSONL_Parse_Large |
12490867.80356988 ns/iter |
13974045.439999826 ns/iter |
0.89 |
JSONL_Parse_Large_GZIP |
14044978.879999235 ns/iter |
15290003.04347876 ns/iter |
0.92 |
URITemplateRouter_Create |
30216.741455844814 ns/iter |
30831.413029143503 ns/iter |
0.98 |
URITemplateRouter_Match |
145.42077151542304 ns/iter |
152.3948934907918 ns/iter |
0.95 |
URITemplateRouter_Match_BasePath |
170.97465422664132 ns/iter |
170.5445170293953 ns/iter |
1.00 |
URITemplateRouterView_Restore |
8616.135608569528 ns/iter |
7959.5270597636845 ns/iter |
1.08 |
URITemplateRouterView_Match |
124.90817897819463 ns/iter |
121.86514435895928 ns/iter |
1.02 |
URITemplateRouterView_Match_BasePath |
142.8790233432687 ns/iter |
142.58047239346874 ns/iter |
1.00 |
URITemplateRouterView_Arguments |
464.9794892058948 ns/iter |
469.29829644654967 ns/iter |
0.99 |
Pointer_Object_Traverse |
29.492483922946114 ns/iter |
29.7056505091835 ns/iter |
0.99 |
Pointer_Object_Try_Traverse |
22.827329169079416 ns/iter |
23.103639032139572 ns/iter |
0.99 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
154.99909102516122 ns/iter |
157.68436506373868 ns/iter |
0.98 |
Pointer_Walker_Schema_ISO_Language |
1909173.8157184531 ns/iter |
1906214.0867209393 ns/iter |
1.00 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1538157.0131866792 ns/iter |
1542190.6769911926 ns/iter |
1.00 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1646711.1717646036 ns/iter |
1689439.1397590332 ns/iter |
0.97 |
Pointer_Position_Tracker_Get_Deeply_Nested |
683.8906981184822 ns/iter |
629.619941574572 ns/iter |
1.09 |
JSON_Array_Of_Objects_Unique |
414.10613077883056 ns/iter |
390.18047520899523 ns/iter |
1.06 |
JSON_Parse_1 |
7791.827137343832 ns/iter |
7825.555254652899 ns/iter |
1.00 |
JSON_Parse_Real |
6610.49911281768 ns/iter |
6724.100307111848 ns/iter |
0.98 |
JSON_Parse_Decimal |
9901.177095262798 ns/iter |
11226.799843114166 ns/iter |
0.88 |
JSON_Parse_Schema_ISO_Language |
5187938.473282946 ns/iter |
5186775.91044812 ns/iter |
1.00 |
JSON_Parse_Integer |
4924.301280699432 ns/iter |
4825.811312831494 ns/iter |
1.02 |
JSON_Parse_String_NonSSO_Plain |
8699.30799018376 ns/iter |
8520.982420851571 ns/iter |
1.02 |
JSON_Parse_String_SSO_Plain |
3789.069288379468 ns/iter |
3937.4144876604614 ns/iter |
0.96 |
JSON_Parse_String_Escape_Heavy |
19484.8565697089 ns/iter |
20614.606425463055 ns/iter |
0.95 |
JSON_Parse_Object_Short_Keys |
11532.165635184052 ns/iter |
11182.633286928422 ns/iter |
1.03 |
JSON_Parse_Object_Scalar_Properties |
5871.02087577206 ns/iter |
6076.032138052336 ns/iter |
0.97 |
JSON_Parse_Object_Array_Properties |
9058.9225034978 ns/iter |
8973.10960587994 ns/iter |
1.01 |
JSON_Parse_Object_Object_Properties |
9471.443550238453 ns/iter |
9664.796588361909 ns/iter |
0.98 |
JSON_Parse_Nested_Containers |
73604.81433225577 ns/iter |
73762.90275151418 ns/iter |
1.00 |
JSON_From_String_Copy |
19.847258858374975 ns/iter |
18.449235044284016 ns/iter |
1.08 |
JSON_From_String_Temporary |
16.813139959084197 ns/iter |
15.434592921503585 ns/iter |
1.09 |
JSON_Number_To_Double |
20.427236737345552 ns/iter |
21.834047648276215 ns/iter |
0.94 |
JSON_Object_At_Last_Key/8 |
6.691435682146853 ns/iter |
5.930220011077285 ns/iter |
1.13 |
JSON_Object_At_Last_Key/32 |
23.580816151247753 ns/iter |
22.421741924871668 ns/iter |
1.05 |
JSON_Object_At_Last_Key/128 |
91.08688961562778 ns/iter |
87.61893164373939 ns/iter |
1.04 |
JSON_Object_At_Last_Key/512 |
378.4871453212051 ns/iter |
426.64755629959564 ns/iter |
0.89 |
JSON_Fast_Hash_Helm_Chart_Lock |
62.99906922612455 ns/iter |
60.88756978455029 ns/iter |
1.03 |
JSON_Equality_Helm_Chart_Lock |
165.6669436589617 ns/iter |
161.0028053059573 ns/iter |
1.03 |
JSON_Divisible_By_Decimal |
249.9859800948098 ns/iter |
238.96557177215956 ns/iter |
1.05 |
JSON_String_Equal/10 |
5.322211696837842 ns/iter |
5.650557698303538 ns/iter |
0.94 |
JSON_String_Equal/100 |
6.02713742196559 ns/iter |
6.2717467342871345 ns/iter |
0.96 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7134658784424902 ns/iter |
0.6238611897051934 ns/iter |
1.14 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
21.94267976667419 ns/iter |
25.47962924019846 ns/iter |
0.86 |
JSON_String_Fast_Hash/10 |
1.0551904495844098 ns/iter |
0.9350301920577021 ns/iter |
1.13 |
JSON_String_Fast_Hash/100 |
1.0549940711870636 ns/iter |
0.9347732640924884 ns/iter |
1.13 |
JSON_String_Key_Hash/10 |
1.4071464082573586 ns/iter |
1.247646462938689 ns/iter |
1.13 |
JSON_String_Key_Hash/100 |
14.756348004273207 ns/iter |
12.443833559788606 ns/iter |
1.19 |
JSON_Object_Defines_Miss_Same_Length |
3.8706359296403687 ns/iter |
3.4417576230014655 ns/iter |
1.12 |
JSON_Object_Defines_Miss_Too_Small |
3.8700020373371182 ns/iter |
3.4255605766748274 ns/iter |
1.13 |
JSON_Object_Defines_Miss_Too_Large |
3.518522613278951 ns/iter |
3.1273512765475013 ns/iter |
1.13 |
Regex_Lower_S_Or_Upper_S_Asterisk |
1.0549907400855576 ns/iter |
0.9340071257392372 ns/iter |
1.13 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
0.7036142968213052 ns/iter |
0.6237242050628817 ns/iter |
1.13 |
Regex_Period_Asterisk |
0.7056360109297485 ns/iter |
0.6226387829530808 ns/iter |
1.13 |
Regex_Group_Period_Asterisk_Group |
1.0551717691148625 ns/iter |
0.933437847983206 ns/iter |
1.13 |
Regex_Period_Plus |
1.0544626840776141 ns/iter |
0.9343126924102293 ns/iter |
1.13 |
Regex_Period |
0.7033638178449418 ns/iter |
0.6225728175967933 ns/iter |
1.13 |
Regex_Caret_Period_Plus_Dollar |
0.7035791125198028 ns/iter |
0.6227820708879737 ns/iter |
1.13 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
1.0551286133439288 ns/iter |
0.9387271381190119 ns/iter |
1.12 |
Regex_Caret_Period_Asterisk_Dollar |
1.0562699611114088 ns/iter |
0.9342248099965202 ns/iter |
1.13 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
0.7032222775979253 ns/iter |
0.6238405516893594 ns/iter |
1.13 |
Regex_Caret_X_Hyphen |
4.2185712609806405 ns/iter |
4.052659251098527 ns/iter |
1.04 |
Regex_Period_Md_Dollar |
33.76965386015141 ns/iter |
29.952016988872145 ns/iter |
1.13 |
Regex_Caret_Slash_Period_Asterisk |
4.57259644164597 ns/iter |
4.403881978570599 ns/iter |
1.04 |
Regex_Caret_Period_Range_Dollar |
0.8403685454555402 ns/iter |
0.7817203179848402 ns/iter |
1.08 |
Regex_Nested_Backtrack |
40.268829868479905 ns/iter |
38.3383571046968 ns/iter |
1.05 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (linux/llvm)
Details
| Benchmark suite | Current: 3be8f24 | Previous: 8ca19da | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.2019698047950294 ns/iter |
2.4706366612893276 ns/iter |
0.89 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.183464716905512 ns/iter |
2.4620651533040903 ns/iter |
0.89 |
Regex_Period_Asterisk |
2.188296896475487 ns/iter |
2.4634611019436257 ns/iter |
0.89 |
Regex_Group_Period_Asterisk_Group |
2.216438944595862 ns/iter |
2.462354952239234 ns/iter |
0.90 |
Regex_Period_Plus |
2.802628799289401 ns/iter |
3.8701042428788486 ns/iter |
0.72 |
Regex_Period |
2.49038457161147 ns/iter |
3.515371127238503 ns/iter |
0.71 |
Regex_Caret_Period_Plus_Dollar |
2.4913993562436403 ns/iter |
3.514758174958752 ns/iter |
0.71 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.802713104103445 ns/iter |
3.86907193700368 ns/iter |
0.72 |
Regex_Caret_Period_Asterisk_Dollar |
3.4287009049729766 ns/iter |
2.8143326969499713 ns/iter |
1.22 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
3.113631888369571 ns/iter |
2.4616583878699467 ns/iter |
1.26 |
Regex_Caret_X_Hyphen |
6.546185648760986 ns/iter |
7.060807974909643 ns/iter |
0.93 |
Regex_Period_Md_Dollar |
27.457693786255664 ns/iter |
26.717277710572155 ns/iter |
1.03 |
Regex_Caret_Slash_Period_Asterisk |
7.166303309760332 ns/iter |
7.719686905177855 ns/iter |
0.93 |
Regex_Caret_Period_Range_Dollar |
3.4295228743485064 ns/iter |
3.5199463884106708 ns/iter |
0.97 |
Regex_Nested_Backtrack |
37.625943302641765 ns/iter |
37.62878145738565 ns/iter |
1.00 |
JSON_Array_Of_Objects_Unique |
483.6681241026808 ns/iter |
500.10960055422186 ns/iter |
0.97 |
JSON_Parse_1 |
4823.153046338643 ns/iter |
4606.535047267004 ns/iter |
1.05 |
JSON_Parse_Real |
5333.612366592489 ns/iter |
5113.934067372062 ns/iter |
1.04 |
JSON_Parse_Decimal |
7490.769294570106 ns/iter |
7515.628468823916 ns/iter |
1.00 |
JSON_Parse_Schema_ISO_Language |
3497024.83499982 ns/iter |
3507572.2150008916 ns/iter |
1.00 |
JSON_Parse_Integer |
3823.832962576886 ns/iter |
3931.950083745756 ns/iter |
0.97 |
JSON_Parse_String_NonSSO_Plain |
5097.141531593788 ns/iter |
5191.306646470981 ns/iter |
0.98 |
JSON_Parse_String_SSO_Plain |
2747.5193172487498 ns/iter |
2922.6534168234384 ns/iter |
0.94 |
JSON_Parse_String_Escape_Heavy |
14533.439194392176 ns/iter |
14884.053404848259 ns/iter |
0.98 |
JSON_Parse_Object_Short_Keys |
10650.050649715988 ns/iter |
8124.214391641138 ns/iter |
1.31 |
JSON_Parse_Object_Scalar_Properties |
4165.315062301053 ns/iter |
4039.105305587054 ns/iter |
1.03 |
JSON_Parse_Object_Array_Properties |
5804.982253815587 ns/iter |
5492.361446253992 ns/iter |
1.06 |
JSON_Parse_Object_Object_Properties |
5603.177052669161 ns/iter |
5564.371080429914 ns/iter |
1.01 |
JSON_Parse_Nested_Containers |
45357.58555678914 ns/iter |
44602.334074587605 ns/iter |
1.02 |
JSON_From_String_Copy |
19.691871532913588 ns/iter |
21.236584800307096 ns/iter |
0.93 |
JSON_From_String_Temporary |
17.463779374034523 ns/iter |
18.488874049630475 ns/iter |
0.94 |
JSON_Number_To_Double |
24.02754823175645 ns/iter |
22.845716136991076 ns/iter |
1.05 |
JSON_Object_At_Last_Key/8 |
3.692763913234052 ns/iter |
3.8705911323526627 ns/iter |
0.95 |
JSON_Object_At_Last_Key/32 |
11.93442376909817 ns/iter |
13.045962109438296 ns/iter |
0.91 |
JSON_Object_At_Last_Key/128 |
48.31361015851356 ns/iter |
47.13028772468869 ns/iter |
1.03 |
JSON_Object_At_Last_Key/512 |
383.6403373364549 ns/iter |
367.86158698240763 ns/iter |
1.04 |
JSON_Fast_Hash_Helm_Chart_Lock |
56.698040378507514 ns/iter |
68.61868584017714 ns/iter |
0.83 |
JSON_Equality_Helm_Chart_Lock |
190.8899297539008 ns/iter |
188.40839989034214 ns/iter |
1.01 |
JSON_Divisible_By_Decimal |
255.13927154470636 ns/iter |
254.81111919665977 ns/iter |
1.00 |
JSON_String_Equal/10 |
6.556599149622891 ns/iter |
6.346103918631003 ns/iter |
1.03 |
JSON_String_Equal/100 |
7.173429269285886 ns/iter |
7.03715565687477 ns/iter |
1.02 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.9361055248330249 ns/iter |
1.055232693304181 ns/iter |
0.89 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
10.58269731142297 ns/iter |
12.33530417526205 ns/iter |
0.86 |
JSON_String_Fast_Hash/10 |
2.180751023210241 ns/iter |
2.1113223741967193 ns/iter |
1.03 |
JSON_String_Fast_Hash/100 |
2.212632318684251 ns/iter |
2.109154894286985 ns/iter |
1.05 |
JSON_String_Key_Hash/10 |
2.1808473218634714 ns/iter |
2.465751578020838 ns/iter |
0.88 |
JSON_String_Key_Hash/100 |
6.540387511636611 ns/iter |
7.733480499578024 ns/iter |
0.85 |
JSON_Object_Defines_Miss_Same_Length |
2.6969048348881755 ns/iter |
2.94094352407037 ns/iter |
0.92 |
JSON_Object_Defines_Miss_Too_Small |
3.8389145051784315 ns/iter |
4.21741282697924 ns/iter |
0.91 |
JSON_Object_Defines_Miss_Too_Large |
2.798842764207736 ns/iter |
2.905351195557725 ns/iter |
0.96 |
Pointer_Object_Traverse |
24.157056335945676 ns/iter |
30.135633121459414 ns/iter |
0.80 |
Pointer_Object_Try_Traverse |
30.18848463626462 ns/iter |
30.54914616460196 ns/iter |
0.99 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
164.20488560590948 ns/iter |
167.44168715647646 ns/iter |
0.98 |
Pointer_Walker_Schema_ISO_Language |
1712837.7813266104 ns/iter |
1819099.4458765679 ns/iter |
0.94 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1233532.1045044228 ns/iter |
1262629.2454872811 ns/iter |
0.98 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1655173.8033178041 ns/iter |
2154175.2507737637 ns/iter |
0.77 |
Pointer_Position_Tracker_Get_Deeply_Nested |
662.1215272473112 ns/iter |
732.5288881161895 ns/iter |
0.90 |
URITemplateRouter_Create |
32190.067161427003 ns/iter |
30159.265303506727 ns/iter |
1.07 |
URITemplateRouter_Match |
181.70255557379767 ns/iter |
185.7008797386466 ns/iter |
0.98 |
URITemplateRouter_Match_BasePath |
209.0594729307965 ns/iter |
224.2313837354083 ns/iter |
0.93 |
URITemplateRouterView_Restore |
7873.585670228464 ns/iter |
8722.456908225278 ns/iter |
0.90 |
URITemplateRouterView_Match |
145.09717163593763 ns/iter |
145.20504603457985 ns/iter |
1.00 |
URITemplateRouterView_Match_BasePath |
163.87008911238044 ns/iter |
168.24339905648822 ns/iter |
0.97 |
URITemplateRouterView_Arguments |
429.3456623868892 ns/iter |
473.5900031640161 ns/iter |
0.91 |
JSONL_Parse_Large |
9902783.52112679 ns/iter |
9149606.052634036 ns/iter |
1.08 |
JSONL_Parse_Large_GZIP |
11452319.590165136 ns/iter |
10853607.46874997 ns/iter |
1.06 |
HTML_Build_Table_100000 |
70657539.49999589 ns/iter |
71239479.39999197 ns/iter |
0.99 |
HTML_Render_Table_100000 |
5915641.966101564 ns/iter |
5181519.066667938 ns/iter |
1.14 |
GZIP_Compress_ISO_Language_Set_3_Locations |
33644925.33333284 ns/iter |
35609189.1999995 ns/iter |
0.94 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4328256.939024508 ns/iter |
4276578.189024172 ns/iter |
1.01 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1887461.8760107132 ns/iter |
2128656.996960824 ns/iter |
0.89 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
352774.0206548902 ns/iter |
276288.85448797565 ns/iter |
1.28 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (windows/msvc)
Details
| Benchmark suite | Current: 3be8f24 | Previous: 8ca19da | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
5.073697999998785 ns/iter |
5.070831000000453 ns/iter |
1.00 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
5.018463000001248 ns/iter |
5.018846000000394 ns/iter |
1.00 |
Regex_Period_Asterisk |
5.026914000000033 ns/iter |
5.059929000000238 ns/iter |
0.99 |
Regex_Group_Period_Asterisk_Group |
5.098375000000033 ns/iter |
5.019995000000108 ns/iter |
1.02 |
Regex_Period_Plus |
5.023544999999103 ns/iter |
5.021176785714739 ns/iter |
1.00 |
Regex_Period |
5.016267768976782 ns/iter |
5.02185299999951 ns/iter |
1.00 |
Regex_Caret_Period_Plus_Dollar |
5.018648000000212 ns/iter |
5.057818000000225 ns/iter |
0.99 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
5.018181250000404 ns/iter |
5.018195999999762 ns/iter |
1.00 |
Regex_Caret_Period_Asterisk_Dollar |
5.017761999999948 ns/iter |
5.045420535713521 ns/iter |
0.99 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
5.0320380000016485 ns/iter |
5.031203999999434 ns/iter |
1.00 |
Regex_Caret_X_Hyphen |
8.17997209821643 ns/iter |
8.165900669642971 ns/iter |
1.00 |
Regex_Period_Md_Dollar |
44.262893801226326 ns/iter |
44.23844375000385 ns/iter |
1.00 |
Regex_Caret_Slash_Period_Asterisk |
7.858858258926103 ns/iter |
7.943123883928292 ns/iter |
0.99 |
Regex_Caret_Period_Range_Dollar |
5.646986607142626 ns/iter |
5.653472999999849 ns/iter |
1.00 |
Regex_Nested_Backtrack |
58.169821428565776 ns/iter |
59.462071428565565 ns/iter |
0.98 |
JSON_Array_Of_Objects_Unique |
484.56594109574786 ns/iter |
481.4135896012499 ns/iter |
1.01 |
JSON_Parse_1 |
8829.03558466082 ns/iter |
8852.589497369372 ns/iter |
1.00 |
JSON_Parse_Real |
16043.069196430995 ns/iter |
16154.199916516707 ns/iter |
0.99 |
JSON_Parse_Decimal |
11916.768750001693 ns/iter |
11927.79375000086 ns/iter |
1.00 |
JSON_Parse_Schema_ISO_Language |
8216981.111109413 ns/iter |
7364560.000000135 ns/iter |
1.12 |
JSON_Parse_Integer |
6117.625892855472 ns/iter |
6167.075000000466 ns/iter |
0.99 |
JSON_Parse_String_NonSSO_Plain |
7705.175223214106 ns/iter |
7889.403618733013 ns/iter |
0.98 |
JSON_Parse_String_SSO_Plain |
3740.0354642224347 ns/iter |
3658.2774348086423 ns/iter |
1.02 |
JSON_Parse_String_Escape_Heavy |
21516.39687500051 ns/iter |
22591.278124998837 ns/iter |
0.95 |
JSON_Parse_Object_Short_Keys |
13668.578488491858 ns/iter |
13452.43681947971 ns/iter |
1.02 |
JSON_Parse_Object_Scalar_Properties |
6994.840178571898 ns/iter |
6929.6462053574405 ns/iter |
1.01 |
JSON_Parse_Object_Array_Properties |
11711.404687499538 ns/iter |
13917.393749999008 ns/iter |
0.84 |
JSON_Parse_Object_Object_Properties |
11986.083928572303 ns/iter |
12138.95312500135 ns/iter |
0.99 |
JSON_Parse_Nested_Containers |
80565.55510916281 ns/iter |
88668.48437499187 ns/iter |
0.91 |
JSON_From_String_Copy |
63.992776785702134 ns/iter |
67.52223214286447 ns/iter |
0.95 |
JSON_From_String_Temporary |
58.140232142867326 ns/iter |
64.79085714285507 ns/iter |
0.90 |
JSON_Number_To_Double |
120.13187500002687 ns/iter |
139.86465624999056 ns/iter |
0.86 |
JSON_Object_At_Last_Key/8 |
7.203636607142374 ns/iter |
7.462853794642906 ns/iter |
0.97 |
JSON_Object_At_Last_Key/32 |
23.22823125000184 ns/iter |
23.19463032148694 ns/iter |
1.00 |
JSON_Object_At_Last_Key/128 |
89.10472098213924 ns/iter |
89.50102678570357 ns/iter |
1.00 |
JSON_Object_At_Last_Key/512 |
424.91533871435223 ns/iter |
429.17718089822193 ns/iter |
0.99 |
JSON_Fast_Hash_Helm_Chart_Lock |
66.706776785728 ns/iter |
64.38899999998121 ns/iter |
1.04 |
JSON_Equality_Helm_Chart_Lock |
312.1475892857209 ns/iter |
305.6946980251724 ns/iter |
1.02 |
JSON_Divisible_By_Decimal |
315.9147212366746 ns/iter |
310.4214564261502 ns/iter |
1.02 |
JSON_String_Equal/10 |
15.951602678571572 ns/iter |
15.744388392861756 ns/iter |
1.01 |
JSON_String_Equal/100 |
17.31863805367008 ns/iter |
17.060995535714035 ns/iter |
1.02 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
2.5122667857138885 ns/iter |
2.5281747298858845 ns/iter |
0.99 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
15.053188995301298 ns/iter |
14.264651785710823 ns/iter |
1.06 |
JSON_String_Fast_Hash/10 |
5.042633035714061 ns/iter |
5.039836999999352 ns/iter |
1.00 |
JSON_String_Fast_Hash/100 |
5.035957999998573 ns/iter |
5.033237000000099 ns/iter |
1.00 |
JSON_String_Key_Hash/10 |
5.3762770000003 ns/iter |
5.352086000000327 ns/iter |
1.00 |
JSON_String_Key_Hash/100 |
12.53219374999759 ns/iter |
11.893950000001041 ns/iter |
1.05 |
JSON_Object_Defines_Miss_Same_Length |
5.061808000000383 ns/iter |
5.023816000000352 ns/iter |
1.01 |
JSON_Object_Defines_Miss_Too_Small |
4.10405415911444 ns/iter |
4.176219574027664 ns/iter |
0.98 |
JSON_Object_Defines_Miss_Too_Large |
4.144894471686987 ns/iter |
4.098902328747975 ns/iter |
1.01 |
Pointer_Object_Traverse |
68.12516964286276 ns/iter |
67.28397321428555 ns/iter |
1.01 |
Pointer_Object_Try_Traverse |
68.29850446430999 ns/iter |
67.73100892855513 ns/iter |
1.01 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
167.04620535712422 ns/iter |
190.34160628047022 ns/iter |
0.88 |
Pointer_Walker_Schema_ISO_Language |
8759934.666665383 ns/iter |
7140008.8888898 ns/iter |
1.23 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
2463262.8571420615 ns/iter |
2497099.1967869024 ns/iter |
0.99 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
3736410.614526029 ns/iter |
3725615.508021759 ns/iter |
1.00 |
Pointer_Position_Tracker_Get_Deeply_Nested |
558.8589285715326 ns/iter |
538.305593404327 ns/iter |
1.04 |
URITemplateRouter_Create |
42107.720122938044 ns/iter |
40585.18368057919 ns/iter |
1.04 |
URITemplateRouter_Match |
191.16459742541872 ns/iter |
190.64368568555375 ns/iter |
1.00 |
URITemplateRouter_Match_BasePath |
218.3686875000035 ns/iter |
216.07818749998842 ns/iter |
1.01 |
URITemplateRouterView_Restore |
34946.2857142819 ns/iter |
34911.76339286385 ns/iter |
1.00 |
URITemplateRouterView_Match |
159.4724995771154 ns/iter |
157.45541584423034 ns/iter |
1.01 |
URITemplateRouterView_Match_BasePath |
174.35632194350015 ns/iter |
174.5265027584762 ns/iter |
1.00 |
URITemplateRouterView_Arguments |
535.4093750000288 ns/iter |
546.8745999999101 ns/iter |
0.98 |
JSONL_Parse_Large |
33550352.380957734 ns/iter |
32969474.999993056 ns/iter |
1.02 |
JSONL_Parse_Large_GZIP |
34414140.00000123 ns/iter |
33225640.000000566 ns/iter |
1.04 |
HTML_Build_Table_100000 |
91107842.85712726 ns/iter |
88697785.71430027 ns/iter |
1.03 |
HTML_Render_Table_100000 |
8290546.666666564 ns/iter |
7738364.444442899 ns/iter |
1.07 |
GZIP_Compress_ISO_Language_Set_3_Locations |
36422005.26314809 ns/iter |
35868054.99999173 ns/iter |
1.02 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
10540854.687501878 ns/iter |
9871317.333333233 ns/iter |
1.07 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2109761.874999805 ns/iter |
2117081.5624998338 ns/iter |
1.00 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
648756.5178572043 ns/iter |
624877.2321429539 ns/iter |
1.04 |
This comment was automatically generated by workflow using github-action-benchmark.
🤖 Augment PR SummarySummary: This PR adds RSASSA-PSS signature verification support across all crypto backends and exposes it as a new public API. Changes:
Technical Notes: All backends continue to reject malformed inputs and keys beyond 4096 bits, and PSS verification is constrained to salt length = hash output length for RFC 7518 compliance. 🤖 Was this summary useful? React with 👍 or 👎 |
Signed-off-by: Juan Cruz Viotti jv@jviotti.com