Add an RFC 3986 absolute-path reference predicate to the uri module - #2746
Merged
Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
🤖 Augment PR SummarySummary: This PR adds Changes:
🤖 Was this summary useful? React with 👍 or 👎 |
There was a problem hiding this comment.
Benchmark (linux/gcc)
Details
| Benchmark suite | Current: 2289a73 | Previous: a8399ba | Ratio |
|---|---|---|---|
JOSE_VerifySignature_RS256 |
22069.067885789795 ns/iter |
22017.64241323269 ns/iter |
1.00 |
JOSE_VerifySignature_ES512 |
574842.0016447509 ns/iter |
575629.1480263236 ns/iter |
1.00 |
GZIP_Compress_ISO_Language_Set_3_Locations |
36174295.052630536 ns/iter |
36533528.94736815 ns/iter |
0.99 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4177167.7751476145 ns/iter |
4304707.801241997 ns/iter |
0.97 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2017358.2997118784 ns/iter |
2021054.152737699 ns/iter |
1.00 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
381015.4640522914 ns/iter |
382040.24085198244 ns/iter |
1.00 |
HTML_Build_Table_100000 |
55132806.99999731 ns/iter |
55445824.25000044 ns/iter |
0.99 |
HTML_Render_Table_100000 |
1917458.9205479992 ns/iter |
1824292.010335737 ns/iter |
1.05 |
JSONLD_Catalog_Annotation_List_Populate |
689117.7706693243 ns/iter |
688832.5919370663 ns/iter |
1.00 |
JSONLD_Catalog_Materialize |
3550815.7960199937 ns/iter |
3503178.13861396 ns/iter |
1.01 |
JSONL_Parse_Large |
9982490.257142931 ns/iter |
10210581.173913706 ns/iter |
0.98 |
JSONL_Parse_Large_GZIP |
11352969.693548184 ns/iter |
11639574.21666737 ns/iter |
0.98 |
URITemplateRouter_Create |
21418.71456447064 ns/iter |
22061.19712105241 ns/iter |
0.97 |
URITemplateRouter_Match |
167.19895769607214 ns/iter |
166.45523199842657 ns/iter |
1.00 |
URITemplateRouter_Match_BasePath |
185.78785346315786 ns/iter |
185.9005246799031 ns/iter |
1.00 |
URITemplateRouterView_Restore |
8274.997631075246 ns/iter |
8458.763157254216 ns/iter |
0.98 |
URITemplateRouterView_Match |
126.23374409440744 ns/iter |
126.5013884270395 ns/iter |
1.00 |
URITemplateRouterView_Match_BasePath |
145.515201387288 ns/iter |
144.75212990482908 ns/iter |
1.01 |
URITemplateRouterView_Arguments |
468.5246552630943 ns/iter |
470.99862231553215 ns/iter |
0.99 |
JSONPath_Descendant_Filter_Nested |
1618.2893409241624 ns/iter |
1619.5246427156917 ns/iter |
1.00 |
Pointer_Object_Traverse |
26.66133573626501 ns/iter |
53.17318329999807 ns/iter |
0.50 |
Pointer_Object_Try_Traverse |
25.849408138063016 ns/iter |
26.7684911077288 ns/iter |
0.97 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
131.95141869199276 ns/iter |
134.57965460119152 ns/iter |
0.98 |
Pointer_Walker_Schema_ISO_Language |
1398848.0040484872 ns/iter |
1397057.642570159 ns/iter |
1.00 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1194342.6473594496 ns/iter |
1206911.419079934 ns/iter |
0.99 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1681454.522781678 ns/iter |
1705211.9004856162 ns/iter |
0.99 |
Pointer_Position_Tracker_Get_Deeply_Nested |
597.6133757768539 ns/iter |
591.0686619672886 ns/iter |
1.01 |
JSON_Array_Of_Objects_Unique |
399.74119855647143 ns/iter |
401.6717129095868 ns/iter |
1.00 |
JSON_Parse_1 |
5274.738035736914 ns/iter |
5430.771904479071 ns/iter |
0.97 |
JSON_Parse_Real |
5756.12910277206 ns/iter |
5816.950217455831 ns/iter |
0.99 |
JSON_Parse_Decimal |
10374.697613084434 ns/iter |
10324.973758353117 ns/iter |
1.00 |
JSON_Parse_Schema_ISO_Language |
3742060.288770133 ns/iter |
3750754.935483827 ns/iter |
1.00 |
JSON_Parse_Integer |
3792.8400341290826 ns/iter |
3782.1903138203043 ns/iter |
1.00 |
JSON_Parse_String_NonSSO_Plain |
3359.786407766894 ns/iter |
3386.415941291742 ns/iter |
0.99 |
JSON_Parse_String_SSO_Plain |
3003.840468775598 ns/iter |
2990.287516339572 ns/iter |
1.00 |
JSON_Parse_String_Escape_Heavy |
16690.208419747563 ns/iter |
16735.803947399545 ns/iter |
1.00 |
JSON_Parse_Object_Short_Keys |
8492.24901238458 ns/iter |
8522.68339533673 ns/iter |
1.00 |
JSON_Parse_Object_Scalar_Properties |
4324.03306387347 ns/iter |
4316.81407992495 ns/iter |
1.00 |
JSON_Parse_Object_Array_Properties |
6478.61221324759 ns/iter |
6387.683205302952 ns/iter |
1.01 |
JSON_Parse_Object_Object_Properties |
6588.433465851294 ns/iter |
6527.6701832935205 ns/iter |
1.01 |
JSON_Parse_Nested_Containers |
38688.356673477065 ns/iter |
38826.50512720985 ns/iter |
1.00 |
JSON_From_String_Copy |
8.553303184481466 ns/iter |
8.855949368091231 ns/iter |
0.97 |
JSON_From_String_Temporary |
7.268552292484752 ns/iter |
7.222275819087801 ns/iter |
1.01 |
JSON_Number_To_Double |
22.144196069815717 ns/iter |
22.14106878864474 ns/iter |
1.00 |
JSON_Object_At_Last_Key/8 |
5.612499689723636 ns/iter |
5.6144972294736535 ns/iter |
1.00 |
JSON_Object_At_Last_Key/32 |
21.802465737295126 ns/iter |
21.54215561373965 ns/iter |
1.01 |
JSON_Object_At_Last_Key/128 |
87.70589484878238 ns/iter |
87.75270777449525 ns/iter |
1.00 |
JSON_Object_At_Last_Key/512 |
392.2351182896333 ns/iter |
392.8705211699255 ns/iter |
1.00 |
JSON_Fast_Hash_Helm_Chart_Lock |
62.23611618382943 ns/iter |
54.913725164453425 ns/iter |
1.13 |
JSON_Equality_Helm_Chart_Lock |
148.32513585728555 ns/iter |
148.06110385479107 ns/iter |
1.00 |
JSON_Divisible_By_Decimal |
263.87464569586444 ns/iter |
265.8028206139688 ns/iter |
0.99 |
JSON_String_Equal/10 |
5.413625586424027 ns/iter |
5.414696464308002 ns/iter |
1.00 |
JSON_String_Equal/100 |
6.041513478517437 ns/iter |
6.039860093778174 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7494483296023131 ns/iter |
0.7492467478798326 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
25.188823853300775 ns/iter |
25.232829309627764 ns/iter |
1.00 |
JSON_String_Fast_Hash/10 |
2.260918522559365 ns/iter |
2.309775398651339 ns/iter |
0.98 |
JSON_String_Fast_Hash/100 |
2.258921047463874 ns/iter |
2.261573432320901 ns/iter |
1.00 |
JSON_String_Key_Hash/10 |
1.2467748999549078 ns/iter |
1.2482578546267682 ns/iter |
1.00 |
JSON_String_Key_Hash/100 |
12.436768477289466 ns/iter |
12.446684832777603 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Same_Length |
3.1154217121388257 ns/iter |
3.1145226367625916 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Small |
3.4327515201758656 ns/iter |
3.4413099701042125 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Large |
3.1159703472323628 ns/iter |
3.1174482839110516 ns/iter |
1.00 |
Regex_Lower_S_Or_Upper_S_Asterisk |
0.6225556159605159 ns/iter |
0.6233830555183538 ns/iter |
1.00 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
0.6231261038832236 ns/iter |
0.6243060416429266 ns/iter |
1.00 |
Regex_Period_Asterisk |
0.6230620501917713 ns/iter |
0.6229862031531762 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
0.6404661471394416 ns/iter |
0.635112883473838 ns/iter |
1.01 |
Regex_Period_Plus |
0.6228727657912345 ns/iter |
0.6234031154286374 ns/iter |
1.00 |
Regex_Period |
0.6227040833277905 ns/iter |
0.6226174510669192 ns/iter |
1.00 |
Regex_Caret_Period_Plus_Dollar |
0.623104569498244 ns/iter |
0.6236264062665741 ns/iter |
1.00 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
0.6232331750286196 ns/iter |
0.6232912526083533 ns/iter |
1.00 |
Regex_Caret_Period_Asterisk_Dollar |
0.6240684213465532 ns/iter |
0.6230683741154158 ns/iter |
1.00 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
0.6224479834731754 ns/iter |
0.6229158987167744 ns/iter |
1.00 |
Regex_Caret_X_Hyphen |
4.054017585134289 ns/iter |
4.052843357907132 ns/iter |
1.00 |
Regex_Period_Md_Dollar |
28.206487660286257 ns/iter |
30.89072897288427 ns/iter |
0.91 |
Regex_Caret_Slash_Period_Asterisk |
4.360700771827526 ns/iter |
4.361542271581804 ns/iter |
1.00 |
Regex_Caret_Period_Range_Dollar |
1.2498769198348454 ns/iter |
1.246497987662994 ns/iter |
1.00 |
Regex_Nested_Backtrack |
37.46982593798459 ns/iter |
38.555029141866626 ns/iter |
0.97 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Benchmark (macos/llvm)
Details
| Benchmark suite | Current: 2289a73 | Previous: a8399ba | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.294518210363742 ns/iter |
1.7840719698629905 ns/iter |
1.29 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.1346905697424363 ns/iter |
1.8243350973603378 ns/iter |
1.17 |
Regex_Period_Asterisk |
1.841394879525179 ns/iter |
1.9137374999292411 ns/iter |
0.96 |
Regex_Group_Period_Asterisk_Group |
2.4596661741330346 ns/iter |
2.1947806701919577 ns/iter |
1.12 |
Regex_Period_Plus |
2.292971337512094 ns/iter |
2.2220813014063343 ns/iter |
1.03 |
Regex_Period |
2.410894219404005 ns/iter |
2.1819802697606687 ns/iter |
1.10 |
Regex_Caret_Period_Plus_Dollar |
2.922846678787768 ns/iter |
2.252963693856955 ns/iter |
1.30 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.5898065884715527 ns/iter |
2.1114220312619625 ns/iter |
1.23 |
Regex_Caret_Period_Asterisk_Dollar |
2.102259513630258 ns/iter |
1.77459095597672 ns/iter |
1.18 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.720015994977443 ns/iter |
1.8100523682213225 ns/iter |
0.95 |
Regex_Caret_X_Hyphen |
6.389309385901499 ns/iter |
6.28938552830017 ns/iter |
1.02 |
Regex_Period_Md_Dollar |
22.146791449041885 ns/iter |
17.767732652050363 ns/iter |
1.25 |
Regex_Caret_Slash_Period_Asterisk |
5.269005830000424 ns/iter |
5.397880839999516 ns/iter |
0.98 |
Regex_Caret_Period_Range_Dollar |
2.2269080180534324 ns/iter |
2.05788227621685 ns/iter |
1.08 |
Regex_Nested_Backtrack |
30.00486401708209 ns/iter |
25.967739964946837 ns/iter |
1.16 |
JSON_Array_Of_Objects_Unique |
376.624474239614 ns/iter |
357.51477998443204 ns/iter |
1.05 |
JSON_Parse_1 |
3164.366428728077 ns/iter |
2900.202604891261 ns/iter |
1.09 |
JSON_Parse_Real |
5358.110431855995 ns/iter |
4996.122152131434 ns/iter |
1.07 |
JSON_Parse_Decimal |
5733.72634975062 ns/iter |
5100.12136805647 ns/iter |
1.12 |
JSON_Parse_Schema_ISO_Language |
2869876.1869918597 ns/iter |
2033375.1196580527 ns/iter |
1.41 |
JSON_Parse_Integer |
3449.472775807805 ns/iter |
2976.2136367699754 ns/iter |
1.16 |
JSON_Parse_String_NonSSO_Plain |
3047.0847460650166 ns/iter |
3751.5598583332176 ns/iter |
0.81 |
JSON_Parse_String_SSO_Plain |
1741.6881048001892 ns/iter |
1870.6267007615809 ns/iter |
0.93 |
JSON_Parse_String_Escape_Heavy |
17864.607048333124 ns/iter |
17296.343191989774 ns/iter |
1.03 |
JSON_Parse_Object_Short_Keys |
5887.975589019414 ns/iter |
5767.603663511828 ns/iter |
1.02 |
JSON_Parse_Object_Scalar_Properties |
2801.03894750551 ns/iter |
2909.9336692434345 ns/iter |
0.96 |
JSON_Parse_Object_Array_Properties |
3329.6101825688556 ns/iter |
3547.73060335279 ns/iter |
0.94 |
JSON_Parse_Object_Object_Properties |
3586.8518525820955 ns/iter |
3488.9442258180607 ns/iter |
1.03 |
JSON_Parse_Nested_Containers |
27228.6748751718 ns/iter |
26503.504373607608 ns/iter |
1.03 |
JSON_From_String_Copy |
10.929509165834313 ns/iter |
11.303570530561865 ns/iter |
0.97 |
JSON_From_String_Temporary |
6.521814870420313 ns/iter |
6.987156457627257 ns/iter |
0.93 |
JSON_Number_To_Double |
40.148806950957926 ns/iter |
35.27079943299298 ns/iter |
1.14 |
JSON_Object_At_Last_Key/8 |
4.104144371923775 ns/iter |
4.001336125680748 ns/iter |
1.03 |
JSON_Object_At_Last_Key/32 |
12.610155150216617 ns/iter |
12.996858475948837 ns/iter |
0.97 |
JSON_Object_At_Last_Key/128 |
59.21796625573426 ns/iter |
54.815016650484694 ns/iter |
1.08 |
JSON_Object_At_Last_Key/512 |
201.75275911429895 ns/iter |
216.1656904752968 ns/iter |
0.93 |
JSON_Fast_Hash_Helm_Chart_Lock |
64.24372276436985 ns/iter |
68.66388289467864 ns/iter |
0.94 |
JSON_Equality_Helm_Chart_Lock |
170.98467539704285 ns/iter |
163.84831603175942 ns/iter |
1.04 |
JSON_Divisible_By_Decimal |
183.36475084582915 ns/iter |
191.60120837106646 ns/iter |
0.96 |
JSON_String_Equal/10 |
7.2200058423091775 ns/iter |
7.752188794952335 ns/iter |
0.93 |
JSON_String_Equal/100 |
7.143531085862939 ns/iter |
7.718535782846842 ns/iter |
0.93 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.3493963287169332 ns/iter |
0.3394433970969177 ns/iter |
1.03 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
4.5659500782196 ns/iter |
3.4149942477335093 ns/iter |
1.34 |
JSON_String_Fast_Hash/10 |
3.2222609976628926 ns/iter |
2.3294297335782215 ns/iter |
1.38 |
JSON_String_Fast_Hash/100 |
2.6135093911510783 ns/iter |
2.0543741810899867 ns/iter |
1.27 |
JSON_String_Key_Hash/10 |
1.8624294079451211 ns/iter |
1.6765412048296173 ns/iter |
1.11 |
JSON_String_Key_Hash/100 |
2.305660021093961 ns/iter |
2.3310419523064034 ns/iter |
0.99 |
JSON_Object_Defines_Miss_Same_Length |
2.8183031126864226 ns/iter |
2.6555877815037254 ns/iter |
1.06 |
JSON_Object_Defines_Miss_Too_Small |
2.8916810680951257 ns/iter |
3.643188103572969 ns/iter |
0.79 |
JSON_Object_Defines_Miss_Too_Large |
2.969731730114743 ns/iter |
2.621621389464292 ns/iter |
1.13 |
Pointer_Object_Traverse |
22.024595341077045 ns/iter |
20.468777865260712 ns/iter |
1.08 |
Pointer_Object_Try_Traverse |
22.899441408850596 ns/iter |
22.288057067385385 ns/iter |
1.03 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
146.13490215903397 ns/iter |
147.8644564933854 ns/iter |
0.99 |
Pointer_Walker_Schema_ISO_Language |
1276542.8082193558 ns/iter |
1184274.2390158547 ns/iter |
1.08 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
894701.9632183458 ns/iter |
793509.343148332 ns/iter |
1.13 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1313743.3304646367 ns/iter |
1024686.8198582372 ns/iter |
1.28 |
Pointer_Position_Tracker_Get_Deeply_Nested |
402.24239586501784 ns/iter |
328.6435686008165 ns/iter |
1.22 |
JSONPath_Descendant_Filter_Nested |
1410.246139801254 ns/iter |
1282.7230659362965 ns/iter |
1.10 |
URITemplateRouter_Create |
20861.775015521398 ns/iter |
19826.38220384752 ns/iter |
1.05 |
URITemplateRouter_Match |
194.84997545414902 ns/iter |
189.77860049672526 ns/iter |
1.03 |
URITemplateRouter_Match_BasePath |
252.05361066313674 ns/iter |
197.90159698190018 ns/iter |
1.27 |
URITemplateRouterView_Restore |
11824.587227411766 ns/iter |
11037.547730165747 ns/iter |
1.07 |
URITemplateRouterView_Match |
148.1607447212199 ns/iter |
155.1852606806561 ns/iter |
0.95 |
URITemplateRouterView_Match_BasePath |
171.16094935669568 ns/iter |
223.7217821874421 ns/iter |
0.77 |
URITemplateRouterView_Arguments |
604.7650873288031 ns/iter |
566.3814847136473 ns/iter |
1.07 |
JSONL_Parse_Large |
6682546.428570882 ns/iter |
6442143.181818044 ns/iter |
1.04 |
JSONL_Parse_Large_GZIP |
8004332.807690144 ns/iter |
7388504.446601129 ns/iter |
1.08 |
JSONLD_Catalog_Annotation_List_Populate |
553877.0115274389 ns/iter |
474027.2462380049 ns/iter |
1.17 |
JSONLD_Catalog_Materialize |
2489169.2804427575 ns/iter |
2466777.1648351755 ns/iter |
1.01 |
HTML_Build_Table_100000 |
40974425.8888875 ns/iter |
34765302.63157871 ns/iter |
1.18 |
HTML_Render_Table_100000 |
1676612.4161072702 ns/iter |
1609487.8084210283 ns/iter |
1.04 |
GZIP_Compress_ISO_Language_Set_3_Locations |
29111590.00000225 ns/iter |
24594327.586206764 ns/iter |
1.18 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
3840350.98870099 ns/iter |
3146090.9598212284 ns/iter |
1.22 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2030984.198776929 ns/iter |
1403257.7499999662 ns/iter |
1.45 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
337875.4647744761 ns/iter |
265713.95538629504 ns/iter |
1.27 |
JOSE_VerifySignature_RS256 |
28313.734138015057 ns/iter |
19951.302140794072 ns/iter |
1.42 |
JOSE_VerifySignature_ES512 |
1272457.2940199676 ns/iter |
920496.8029099525 ns/iter |
1.38 |
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: 2289a73 | Previous: a8399ba | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.18846504738159 ns/iter |
2.189802092085866 ns/iter |
1.00 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.1783555186115584 ns/iter |
2.1817300374269237 ns/iter |
1.00 |
Regex_Period_Asterisk |
2.1784095688191174 ns/iter |
2.234194460366256 ns/iter |
0.98 |
Regex_Group_Period_Asterisk_Group |
2.1782404214523483 ns/iter |
2.179624647250308 ns/iter |
1.00 |
Regex_Period_Plus |
2.806142436097835 ns/iter |
2.803603466602032 ns/iter |
1.00 |
Regex_Period |
2.8014200618667697 ns/iter |
2.8048358407682734 ns/iter |
1.00 |
Regex_Caret_Period_Plus_Dollar |
2.800536744182072 ns/iter |
2.803876940523602 ns/iter |
1.00 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.8009429039051055 ns/iter |
2.8067226793207545 ns/iter |
1.00 |
Regex_Caret_Period_Asterisk_Dollar |
3.4248928455716836 ns/iter |
3.4238867716241743 ns/iter |
1.00 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
3.4235550040389673 ns/iter |
3.423173704692003 ns/iter |
1.00 |
Regex_Caret_X_Hyphen |
6.5449843033551245 ns/iter |
6.664753162186476 ns/iter |
0.98 |
Regex_Period_Md_Dollar |
28.601365085124026 ns/iter |
28.630842375411063 ns/iter |
1.00 |
Regex_Caret_Slash_Period_Asterisk |
5.917096562628294 ns/iter |
5.917945916249367 ns/iter |
1.00 |
Regex_Caret_Period_Range_Dollar |
4.3579413390159205 ns/iter |
4.3605447791014464 ns/iter |
1.00 |
Regex_Nested_Backtrack |
38.97485079771871 ns/iter |
38.933145866694716 ns/iter |
1.00 |
JSON_Array_Of_Objects_Unique |
432.24385860738107 ns/iter |
430.9842603804967 ns/iter |
1.00 |
JSON_Parse_1 |
4670.773292837259 ns/iter |
4771.620939854118 ns/iter |
0.98 |
JSON_Parse_Real |
5330.739569175194 ns/iter |
5165.645894681173 ns/iter |
1.03 |
JSON_Parse_Decimal |
7756.2801072053735 ns/iter |
7763.683833159165 ns/iter |
1.00 |
JSON_Parse_Schema_ISO_Language |
3376005.6811593897 ns/iter |
3345552.1787441354 ns/iter |
1.01 |
JSON_Parse_Integer |
3716.2806000214177 ns/iter |
3719.610653162697 ns/iter |
1.00 |
JSON_Parse_String_NonSSO_Plain |
3039.748467896193 ns/iter |
3060.347122537781 ns/iter |
0.99 |
JSON_Parse_String_SSO_Plain |
2723.3254501610822 ns/iter |
2745.340000156952 ns/iter |
0.99 |
JSON_Parse_String_Escape_Heavy |
12569.26627681664 ns/iter |
12389.81074023318 ns/iter |
1.01 |
JSON_Parse_Object_Short_Keys |
8298.653026727627 ns/iter |
8488.697428266254 ns/iter |
0.98 |
JSON_Parse_Object_Scalar_Properties |
4298.999618599869 ns/iter |
4338.852366875256 ns/iter |
0.99 |
JSON_Parse_Object_Array_Properties |
5363.210203428211 ns/iter |
5735.932942442642 ns/iter |
0.94 |
JSON_Parse_Object_Object_Properties |
5389.127731533259 ns/iter |
5768.117109545376 ns/iter |
0.93 |
JSON_Parse_Nested_Containers |
36086.4052763938 ns/iter |
36234.13371823632 ns/iter |
1.00 |
JSON_From_String_Copy |
11.979066143318708 ns/iter |
12.260709342707237 ns/iter |
0.98 |
JSON_From_String_Temporary |
10.174811940999762 ns/iter |
10.427240306968322 ns/iter |
0.98 |
JSON_Number_To_Double |
23.166180472939125 ns/iter |
23.132404444166916 ns/iter |
1.00 |
JSON_Object_At_Last_Key/8 |
5.858493720019009 ns/iter |
5.932551894079065 ns/iter |
0.99 |
JSON_Object_At_Last_Key/32 |
21.55513187563207 ns/iter |
21.82476772783106 ns/iter |
0.99 |
JSON_Object_At_Last_Key/128 |
87.85467502934627 ns/iter |
87.91811822630669 ns/iter |
1.00 |
JSON_Object_At_Last_Key/512 |
397.14304865567465 ns/iter |
396.66264195405887 ns/iter |
1.00 |
JSON_Fast_Hash_Helm_Chart_Lock |
59.91470392465917 ns/iter |
59.81590667707228 ns/iter |
1.00 |
JSON_Equality_Helm_Chart_Lock |
176.94717870060495 ns/iter |
190.5316771419093 ns/iter |
0.93 |
JSON_Divisible_By_Decimal |
242.27484281300653 ns/iter |
240.5196254916572 ns/iter |
1.01 |
JSON_String_Equal/10 |
5.920263681289548 ns/iter |
5.928735062602291 ns/iter |
1.00 |
JSON_String_Equal/100 |
6.538729464701567 ns/iter |
6.54895610387641 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.9364378103091792 ns/iter |
0.9396664515306652 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
14.618540226923937 ns/iter |
14.62812193498653 ns/iter |
1.00 |
JSON_String_Fast_Hash/10 |
2.490663930547132 ns/iter |
2.492471512137259 ns/iter |
1.00 |
JSON_String_Fast_Hash/100 |
2.4909811753583426 ns/iter |
2.4945520530558225 ns/iter |
1.00 |
JSON_String_Key_Hash/10 |
2.8168163102150974 ns/iter |
2.840234491610686 ns/iter |
0.99 |
JSON_String_Key_Hash/100 |
9.024915804124001 ns/iter |
9.026553179939507 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Same_Length |
2.757458294696572 ns/iter |
2.6525076819443694 ns/iter |
1.04 |
JSON_Object_Defines_Miss_Too_Small |
2.6537271480613738 ns/iter |
2.6467669622543792 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Large |
3.0130973107571415 ns/iter |
3.0542852813321204 ns/iter |
0.99 |
Pointer_Object_Traverse |
29.412132568569355 ns/iter |
29.406298182027683 ns/iter |
1.00 |
Pointer_Object_Try_Traverse |
30.88204807603971 ns/iter |
31.090059968122567 ns/iter |
0.99 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
202.83706089423177 ns/iter |
201.09003189017315 ns/iter |
1.01 |
Pointer_Walker_Schema_ISO_Language |
1533827.4362417073 ns/iter |
1580132.89485471 ns/iter |
0.97 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1238061.5891892754 ns/iter |
1244245.319148928 ns/iter |
1.00 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1588081.5348837555 ns/iter |
1632333.6425231847 ns/iter |
0.97 |
Pointer_Position_Tracker_Get_Deeply_Nested |
631.1799150069801 ns/iter |
633.0365086017517 ns/iter |
1.00 |
JSONPath_Descendant_Filter_Nested |
1526.0331211376456 ns/iter |
1515.752011706102 ns/iter |
1.01 |
URITemplateRouter_Create |
23348.711837797917 ns/iter |
23606.79939779233 ns/iter |
0.99 |
URITemplateRouter_Match |
178.80847129488794 ns/iter |
175.3483990482627 ns/iter |
1.02 |
URITemplateRouter_Match_BasePath |
206.964825192379 ns/iter |
201.102604441182 ns/iter |
1.03 |
URITemplateRouterView_Restore |
8408.857933558358 ns/iter |
8515.303286115593 ns/iter |
0.99 |
URITemplateRouterView_Match |
158.5954108235418 ns/iter |
158.94576509401864 ns/iter |
1.00 |
URITemplateRouterView_Match_BasePath |
185.64113536093663 ns/iter |
183.8600341837141 ns/iter |
1.01 |
URITemplateRouterView_Arguments |
444.5179667576409 ns/iter |
446.8532474037436 ns/iter |
0.99 |
JSONL_Parse_Large |
9253507.546667 ns/iter |
9401279.120000556 ns/iter |
0.98 |
JSONL_Parse_Large_GZIP |
10771596.676923204 ns/iter |
10919562.687501382 ns/iter |
0.99 |
JSONLD_Catalog_Annotation_List_Populate |
608243.1835663557 ns/iter |
603022.9388457432 ns/iter |
1.01 |
JSONLD_Catalog_Materialize |
3491992.0200002254 ns/iter |
3661735.335078628 ns/iter |
0.95 |
HTML_Build_Table_100000 |
57446289.72726414 ns/iter |
58440718.1818175 ns/iter |
0.98 |
HTML_Render_Table_100000 |
1805238.090206054 ns/iter |
2160353.8023600243 ns/iter |
0.84 |
GZIP_Compress_ISO_Language_Set_3_Locations |
33336128.809521273 ns/iter |
33659508.76190297 ns/iter |
0.99 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4180841.733727902 ns/iter |
4256997.372670451 ns/iter |
0.98 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1884976.4716978555 ns/iter |
1891699.643051615 ns/iter |
1.00 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
356096.13455656666 ns/iter |
357050.4948875089 ns/iter |
1.00 |
JOSE_VerifySignature_RS256 |
58120.706619116056 ns/iter |
58098.888235299084 ns/iter |
1.00 |
JOSE_VerifySignature_ES512 |
2361468.454545493 ns/iter |
2369844.68581087 ns/iter |
1.00 |
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: 2289a73 | Previous: a8399ba | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
5.268434000001889 ns/iter |
5.071911607144233 ns/iter |
1.04 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
5.202968750000179 ns/iter |
5.03585300000168 ns/iter |
1.03 |
Regex_Period_Asterisk |
5.087879000000157 ns/iter |
5.074352000001454 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
5.091437500001104 ns/iter |
5.061253571428535 ns/iter |
1.01 |
Regex_Period_Plus |
5.118746987748399 ns/iter |
5.059287499999447 ns/iter |
1.01 |
Regex_Period |
5.379190178570883 ns/iter |
5.094398000001092 ns/iter |
1.06 |
Regex_Caret_Period_Plus_Dollar |
5.079482142856965 ns/iter |
5.028821428571258 ns/iter |
1.01 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
5.028814999998303 ns/iter |
5.041939000000184 ns/iter |
1.00 |
Regex_Caret_Period_Asterisk_Dollar |
5.109687499999691 ns/iter |
5.017224000000624 ns/iter |
1.02 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
5.113612000000103 ns/iter |
5.084385000000111 ns/iter |
1.01 |
Regex_Caret_X_Hyphen |
8.758538800183443 ns/iter |
8.181825892855496 ns/iter |
1.07 |
Regex_Period_Md_Dollar |
46.80283928570767 ns/iter |
45.11333749999835 ns/iter |
1.04 |
Regex_Caret_Slash_Period_Asterisk |
8.006087053572688 ns/iter |
7.978927455357824 ns/iter |
1.00 |
Regex_Caret_Period_Range_Dollar |
5.772699107144571 ns/iter |
5.712823999999729 ns/iter |
1.01 |
Regex_Nested_Backtrack |
58.80494642856401 ns/iter |
60.07491071429172 ns/iter |
0.98 |
JSON_Array_Of_Objects_Unique |
630.1293750001134 ns/iter |
630.1394642857109 ns/iter |
1.00 |
JSON_Parse_1 |
9100.74553571505 ns/iter |
8947.794875915313 ns/iter |
1.02 |
JSON_Parse_Real |
16385.921491423418 ns/iter |
16266.022321426632 ns/iter |
1.01 |
JSON_Parse_Decimal |
11989.276785714406 ns/iter |
11813.087499997924 ns/iter |
1.01 |
JSON_Parse_Schema_ISO_Language |
7729059.999999461 ns/iter |
7393613.333334139 ns/iter |
1.05 |
JSON_Parse_Integer |
6267.203571427769 ns/iter |
6425.4169642846855 ns/iter |
0.98 |
JSON_Parse_String_NonSSO_Plain |
8792.436383929315 ns/iter |
8304.759800178716 ns/iter |
1.06 |
JSON_Parse_String_SSO_Plain |
4223.432458156949 ns/iter |
4155.595793579554 ns/iter |
1.02 |
JSON_Parse_String_Escape_Heavy |
22180.7312499962 ns/iter |
21634.559374994922 ns/iter |
1.03 |
JSON_Parse_Object_Short_Keys |
13390.710755756865 ns/iter |
13344.36096267293 ns/iter |
1.00 |
JSON_Parse_Object_Scalar_Properties |
6821.247321428002 ns/iter |
6841.717857142271 ns/iter |
1.00 |
JSON_Parse_Object_Array_Properties |
11547.203571426833 ns/iter |
12609.778571430752 ns/iter |
0.92 |
JSON_Parse_Object_Object_Properties |
11808.276562501162 ns/iter |
11756.8499999976 ns/iter |
1.00 |
JSON_Parse_Nested_Containers |
81352.26562497877 ns/iter |
80414.77678570886 ns/iter |
1.01 |
JSON_From_String_Copy |
65.95813392857103 ns/iter |
64.28438392857417 ns/iter |
1.03 |
JSON_From_String_Temporary |
58.680821428578966 ns/iter |
58.88456249999357 ns/iter |
1.00 |
JSON_Number_To_Double |
120.54932142855738 ns/iter |
120.45867857141599 ns/iter |
1.00 |
JSON_Object_At_Last_Key/8 |
7.740228794642486 ns/iter |
7.5506930803572105 ns/iter |
1.03 |
JSON_Object_At_Last_Key/32 |
23.6883278606207 ns/iter |
23.359121391081565 ns/iter |
1.01 |
JSON_Object_At_Last_Key/128 |
92.7921540178543 ns/iter |
94.23571454302956 ns/iter |
0.98 |
JSON_Object_At_Last_Key/512 |
425.955200484075 ns/iter |
445.4949029925225 ns/iter |
0.96 |
JSON_Fast_Hash_Helm_Chart_Lock |
107.59376562500479 ns/iter |
108.1385000000117 ns/iter |
0.99 |
JSON_Equality_Helm_Chart_Lock |
212.46096372943109 ns/iter |
214.16767793897193 ns/iter |
0.99 |
JSON_Divisible_By_Decimal |
309.368392857071 ns/iter |
307.3483035714324 ns/iter |
1.01 |
JSON_String_Equal/10 |
10.40863593749819 ns/iter |
10.467551562499011 ns/iter |
0.99 |
JSON_String_Equal/100 |
11.83346607142864 ns/iter |
11.718310937499865 ns/iter |
1.01 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
2.5876949999997123 ns/iter |
2.5461596428572517 ns/iter |
1.02 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
15.21047604816581 ns/iter |
14.33689547171181 ns/iter |
1.06 |
JSON_String_Fast_Hash/10 |
6.671842633928345 ns/iter |
6.650714285714494 ns/iter |
1.00 |
JSON_String_Fast_Hash/100 |
6.736783928571656 ns/iter |
6.749922321428617 ns/iter |
1.00 |
JSON_String_Key_Hash/10 |
5.470380000001569 ns/iter |
5.406501785714113 ns/iter |
1.01 |
JSON_String_Key_Hash/100 |
12.016548214282757 ns/iter |
11.95930468750106 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Same_Length |
4.747011318022922 ns/iter |
5.023305357143824 ns/iter |
0.94 |
JSON_Object_Defines_Miss_Too_Small |
4.838013392858086 ns/iter |
4.830650233996498 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Large |
4.774266407314821 ns/iter |
4.718821215889942 ns/iter |
1.01 |
Pointer_Object_Traverse |
67.6506964285701 ns/iter |
68.53380357142669 ns/iter |
0.99 |
Pointer_Object_Try_Traverse |
72.31891741071702 ns/iter |
71.66055803570057 ns/iter |
1.01 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
175.37721040472772 ns/iter |
182.17366398484683 ns/iter |
0.96 |
Pointer_Walker_Schema_ISO_Language |
10763134.37500076 ns/iter |
11887895.31250123 ns/iter |
0.91 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
2447387.951807071 ns/iter |
2424579.545454504 ns/iter |
1.01 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
3752911.7647059117 ns/iter |
3695054.7486039232 ns/iter |
1.02 |
Pointer_Position_Tracker_Get_Deeply_Nested |
566.6352678570519 ns/iter |
565.6735491072088 ns/iter |
1.00 |
JSONPath_Descendant_Filter_Nested |
2440.8592857136164 ns/iter |
2359.4913398539384 ns/iter |
1.03 |
URITemplateRouter_Create |
40951.523417091434 ns/iter |
41698.653589473004 ns/iter |
0.98 |
URITemplateRouter_Match |
238.82441530978565 ns/iter |
236.37462763675524 ns/iter |
1.01 |
URITemplateRouter_Match_BasePath |
267.7946369550583 ns/iter |
268.7380357143151 ns/iter |
1.00 |
URITemplateRouterView_Restore |
34065.66352599547 ns/iter |
33339.938124028195 ns/iter |
1.02 |
URITemplateRouterView_Match |
182.41263235826753 ns/iter |
184.77173078317205 ns/iter |
0.99 |
URITemplateRouterView_Match_BasePath |
209.94299999998134 ns/iter |
209.3948790448567 ns/iter |
1.00 |
URITemplateRouterView_Arguments |
543.420624999921 ns/iter |
543.6374107142277 ns/iter |
1.00 |
JSONL_Parse_Large |
32507533.33333835 ns/iter |
32676154.545449458 ns/iter |
0.99 |
JSONL_Parse_Large_GZIP |
33956980.9523796 ns/iter |
33752036.36363205 ns/iter |
1.01 |
JSONLD_Catalog_Annotation_List_Populate |
3159688.392857772 ns/iter |
3194700.938967773 ns/iter |
0.99 |
JSONLD_Catalog_Materialize |
7981015.5555555355 ns/iter |
7995769.333332039 ns/iter |
1.00 |
HTML_Build_Table_100000 |
94353657.14284672 ns/iter |
92458645.4545368 ns/iter |
1.02 |
HTML_Render_Table_100000 |
7667221.111109433 ns/iter |
7720364.444442869 ns/iter |
0.99 |
GZIP_Compress_ISO_Language_Set_3_Locations |
35650505.26316028 ns/iter |
35245109.52380903 ns/iter |
1.01 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
9944554.666665984 ns/iter |
10008871.99999852 ns/iter |
0.99 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2059529.0624996212 ns/iter |
2085394.7826082362 ns/iter |
0.99 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
643441.3392856949 ns/iter |
638627.8571428404 ns/iter |
1.01 |
JOSE_VerifySignature_RS256 |
21294.118749999314 ns/iter |
21381.36207997761 ns/iter |
1.00 |
JOSE_VerifySignature_ES512 |
1390789.642856914 ns/iter |
1374139.8214287008 ns/iter |
1.01 |
This comment was automatically generated by workflow using github-action-benchmark.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Signed-off-by: Juan Cruz Viotti jv@jviotti.com