Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
There was a problem hiding this comment.
1 issue found across 13 files
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
🤖 Augment PR SummarySummary: This PR centralizes a few common ASCII character-classification checks into the Changes:
Technical Notes: The new helpers are constexpr, ASCII-focused, and reduce duplicated RFC-oriented character checks across modules. 🤖 Was this summary useful? React with 👍 or 👎 |
There was a problem hiding this comment.
Benchmark (macos/llvm)
Details
| Benchmark suite | Current: f7c1988 | Previous: af38cb0 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
1.693088184633751 ns/iter |
1.7763704361257497 ns/iter |
0.95 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.6354148947679272 ns/iter |
1.7267711285306282 ns/iter |
0.95 |
Regex_Period_Asterisk |
1.6858774645025651 ns/iter |
1.7694417688098183 ns/iter |
0.95 |
Regex_Group_Period_Asterisk_Group |
1.6852263385600978 ns/iter |
1.6463612463764536 ns/iter |
1.02 |
Regex_Period_Plus |
2.0183767143395075 ns/iter |
1.9872267020575283 ns/iter |
1.02 |
Regex_Period |
2.0332946546588038 ns/iter |
1.996827287645944 ns/iter |
1.02 |
Regex_Caret_Period_Plus_Dollar |
2.043495991689201 ns/iter |
1.9952589079150547 ns/iter |
1.02 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.0386287845833424 ns/iter |
1.9742712755109215 ns/iter |
1.03 |
Regex_Caret_Period_Asterisk_Dollar |
1.693145825169389 ns/iter |
1.662630231693978 ns/iter |
1.02 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.6934108165053086 ns/iter |
1.6488767225385446 ns/iter |
1.03 |
Regex_Caret_X_Hyphen |
6.2307835885428045 ns/iter |
5.971304462678048 ns/iter |
1.04 |
Regex_Period_Md_Dollar |
17.268723866966027 ns/iter |
16.47330045505424 ns/iter |
1.05 |
Regex_Caret_Slash_Period_Asterisk |
4.506656321623248 ns/iter |
4.704668400233773 ns/iter |
0.96 |
Regex_Caret_Period_Range_Dollar |
2.023981186495362 ns/iter |
2.034303326117181 ns/iter |
0.99 |
Regex_Nested_Backtrack |
24.855756093164743 ns/iter |
27.47250844436326 ns/iter |
0.90 |
JSON_Array_Of_Objects_Unique |
338.4284972278064 ns/iter |
339.1895922094033 ns/iter |
1.00 |
JSON_Parse_1 |
3630.758032716769 ns/iter |
3525.1137751864776 ns/iter |
1.03 |
JSON_Parse_Real |
5360.712482560167 ns/iter |
5042.960668182094 ns/iter |
1.06 |
JSON_Parse_Decimal |
5636.565280647663 ns/iter |
5424.041067333435 ns/iter |
1.04 |
JSON_Parse_Schema_ISO_Language |
3012042.393012612 ns/iter |
2795639.688524734 ns/iter |
1.08 |
JSON_Parse_Integer |
3026.8841941409564 ns/iter |
2902.621304151707 ns/iter |
1.04 |
JSON_Parse_String_NonSSO_Plain |
3620.9841393723905 ns/iter |
3418.875028569301 ns/iter |
1.06 |
JSON_Parse_String_SSO_Plain |
1796.6497948198873 ns/iter |
1763.900608115255 ns/iter |
1.02 |
JSON_Parse_String_Escape_Heavy |
16474.415587135798 ns/iter |
15840.850027082399 ns/iter |
1.04 |
JSON_Parse_Object_Short_Keys |
5180.782603845727 ns/iter |
5005.544530868818 ns/iter |
1.04 |
JSON_Parse_Object_Scalar_Properties |
2705.8814239053186 ns/iter |
2661.306339378793 ns/iter |
1.02 |
JSON_Parse_Object_Array_Properties |
3507.912632296518 ns/iter |
3210.8071725454856 ns/iter |
1.09 |
JSON_Parse_Object_Object_Properties |
3508.827305112717 ns/iter |
3249.84104692419 ns/iter |
1.08 |
JSON_Parse_Nested_Containers |
28155.84376037897 ns/iter |
26863.4072066584 ns/iter |
1.05 |
JSON_From_String_Copy |
24.921731855836455 ns/iter |
25.871775056842885 ns/iter |
0.96 |
JSON_From_String_Temporary |
19.6826478311942 ns/iter |
19.846780358528363 ns/iter |
0.99 |
JSON_Number_To_Double |
33.380359089618246 ns/iter |
32.04561509246918 ns/iter |
1.04 |
JSON_Object_At_Last_Key/8 |
3.9346728283719057 ns/iter |
3.596015622088005 ns/iter |
1.09 |
JSON_Object_At_Last_Key/32 |
12.55358575361641 ns/iter |
12.489573381967679 ns/iter |
1.01 |
JSON_Object_At_Last_Key/128 |
54.08383327492047 ns/iter |
53.14773784020714 ns/iter |
1.02 |
JSON_Object_At_Last_Key/512 |
185.82636744047392 ns/iter |
184.3024702129436 ns/iter |
1.01 |
JSON_Fast_Hash_Helm_Chart_Lock |
63.11276333576483 ns/iter |
57.83284077762045 ns/iter |
1.09 |
JSON_Equality_Helm_Chart_Lock |
135.13817967641086 ns/iter |
124.66750345473572 ns/iter |
1.08 |
JSON_Divisible_By_Decimal |
176.5116037983596 ns/iter |
162.70833287963367 ns/iter |
1.08 |
JSON_String_Equal/10 |
6.645249508024577 ns/iter |
6.270276812692782 ns/iter |
1.06 |
JSON_String_Equal/100 |
6.167044540965554 ns/iter |
5.972826996794614 ns/iter |
1.03 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7005818078181432 ns/iter |
0.7085660115349259 ns/iter |
0.99 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
3.070310354622941 ns/iter |
3.0667971793145945 ns/iter |
1.00 |
JSON_String_Fast_Hash/10 |
2.2019495185758498 ns/iter |
2.201961723668987 ns/iter |
1.00 |
JSON_String_Fast_Hash/100 |
1.9475320348222736 ns/iter |
1.885611253996816 ns/iter |
1.03 |
JSON_String_Key_Hash/10 |
1.3172756333195714 ns/iter |
1.295918413899959 ns/iter |
1.02 |
JSON_String_Key_Hash/100 |
2.00968908463681 ns/iter |
2.0095958788167656 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Same_Length |
2.196023891276198 ns/iter |
2.248905993916449 ns/iter |
0.98 |
JSON_Object_Defines_Miss_Too_Small |
2.4419056855099317 ns/iter |
2.192150194930028 ns/iter |
1.11 |
JSON_Object_Defines_Miss_Too_Large |
2.211799079705554 ns/iter |
2.2004928254301057 ns/iter |
1.01 |
Pointer_Object_Traverse |
12.906039263102812 ns/iter |
12.865061251450078 ns/iter |
1.00 |
Pointer_Object_Try_Traverse |
21.466510175148183 ns/iter |
21.502504439362767 ns/iter |
1.00 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
143.69137647512568 ns/iter |
186.24788660269098 ns/iter |
0.77 |
Pointer_Walker_Schema_ISO_Language |
1995981.1488092784 ns/iter |
2823467.6764707076 ns/iter |
0.71 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
810145.5785957134 ns/iter |
993120.3427720158 ns/iter |
0.82 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1110938.9486404837 ns/iter |
1307348.2422018428 ns/iter |
0.85 |
Pointer_Position_Tracker_Get_Deeply_Nested |
388.95087447455313 ns/iter |
384.31354532765914 ns/iter |
1.01 |
URITemplateRouter_Create |
22586.27286300509 ns/iter |
23743.400123066058 ns/iter |
0.95 |
URITemplateRouter_Match |
151.85361386499127 ns/iter |
163.3175573218672 ns/iter |
0.93 |
URITemplateRouter_Match_BasePath |
177.92946818211138 ns/iter |
193.12190836269258 ns/iter |
0.92 |
URITemplateRouterView_Restore |
9270.52095113308 ns/iter |
9082.192513840713 ns/iter |
1.02 |
URITemplateRouterView_Match |
120.9882848751485 ns/iter |
127.17572012124926 ns/iter |
0.95 |
URITemplateRouterView_Match_BasePath |
138.63562418970335 ns/iter |
151.50980618475398 ns/iter |
0.92 |
URITemplateRouterView_Arguments |
374.9445455322487 ns/iter |
403.6722094040141 ns/iter |
0.93 |
JSONL_Parse_Large |
11531370.833336042 ns/iter |
12155499.316668283 ns/iter |
0.95 |
JSONL_Parse_Large_GZIP |
12344427.821428131 ns/iter |
13147441.526315194 ns/iter |
0.94 |
HTML_Build_Table_100000 |
61489295.08333367 ns/iter |
73758358.2999946 ns/iter |
0.83 |
HTML_Render_Table_100000 |
2810135.0206198697 ns/iter |
3671530.0829874347 ns/iter |
0.77 |
GZIP_Compress_ISO_Language_Set_3_Locations |
24835708.30767908 ns/iter |
27362505.000000965 ns/iter |
0.91 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4689127.773332681 ns/iter |
5344706.659999474 ns/iter |
0.88 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1398081.6831679135 ns/iter |
2035565.810747761 ns/iter |
0.69 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
252594.30281953543 ns/iter |
347581.6533604628 ns/iter |
0.73 |
JOSE_VerifySignature_RS256 |
20187.409770735878 ns/iter |
21944.20357788843 ns/iter |
0.92 |
JOSE_VerifySignature_ES512 |
904680.2868218599 ns/iter |
972350.7885861717 ns/iter |
0.93 |
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: f7c1988 | Previous: af38cb0 | Ratio |
|---|---|---|---|
JOSE_VerifySignature_RS256 |
24879.277507610106 ns/iter |
24740.72597057509 ns/iter |
1.01 |
JOSE_VerifySignature_ES512 |
641424.6731123448 ns/iter |
642743.9871558901 ns/iter |
1.00 |
GZIP_Compress_ISO_Language_Set_3_Locations |
39348075.05555682 ns/iter |
39458964.722219504 ns/iter |
1.00 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4122208.3529412565 ns/iter |
4040955.751444842 ns/iter |
1.02 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2284306.9869282604 ns/iter |
2282442.938110863 ns/iter |
1.00 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
279852.1199030793 ns/iter |
276761.37114623614 ns/iter |
1.01 |
HTML_Build_Table_100000 |
71500684.20000935 ns/iter |
69741156.49999249 ns/iter |
1.03 |
HTML_Render_Table_100000 |
2062427.8328444147 ns/iter |
2011154.36311247 ns/iter |
1.03 |
JSONL_Parse_Large |
12347973.245614173 ns/iter |
12204151.14035109 ns/iter |
1.01 |
JSONL_Parse_Large_GZIP |
13876474.63999883 ns/iter |
13799056.27451018 ns/iter |
1.01 |
URITemplateRouter_Create |
29705.00502706743 ns/iter |
29782.668251677205 ns/iter |
1.00 |
URITemplateRouter_Match |
152.71491247217324 ns/iter |
153.11571386816013 ns/iter |
1.00 |
URITemplateRouter_Match_BasePath |
180.58298180296688 ns/iter |
181.26870139202637 ns/iter |
1.00 |
URITemplateRouterView_Restore |
8522.945136505916 ns/iter |
8602.582427981162 ns/iter |
0.99 |
URITemplateRouterView_Match |
126.12526205090607 ns/iter |
126.01322206759127 ns/iter |
1.00 |
URITemplateRouterView_Match_BasePath |
142.31859079595233 ns/iter |
142.5858401695978 ns/iter |
1.00 |
URITemplateRouterView_Arguments |
451.17394441766356 ns/iter |
452.91771744966525 ns/iter |
1.00 |
Pointer_Object_Traverse |
29.61743858344471 ns/iter |
29.604313238034987 ns/iter |
1.00 |
Pointer_Object_Try_Traverse |
24.977436443105436 ns/iter |
24.97067965112231 ns/iter |
1.00 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
166.6803851961805 ns/iter |
167.91903109449308 ns/iter |
0.99 |
Pointer_Walker_Schema_ISO_Language |
1914890.414169022 ns/iter |
1863932.2192513724 ns/iter |
1.03 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1533764.6541849452 ns/iter |
1537126.4489795272 ns/iter |
1.00 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1662796.6199523616 ns/iter |
1670370.2945367137 ns/iter |
1.00 |
Pointer_Position_Tracker_Get_Deeply_Nested |
596.2788829173018 ns/iter |
422.749852544838 ns/iter |
1.41 |
JSON_Array_Of_Objects_Unique |
405.46144864720833 ns/iter |
406.1422059254524 ns/iter |
1.00 |
JSON_Parse_1 |
7474.191192609597 ns/iter |
7407.630518961682 ns/iter |
1.01 |
JSON_Parse_Real |
6597.636947018773 ns/iter |
6547.131328110639 ns/iter |
1.01 |
JSON_Parse_Decimal |
9678.3851574938 ns/iter |
9566.927133583908 ns/iter |
1.01 |
JSON_Parse_Schema_ISO_Language |
5106123.659420452 ns/iter |
5041415.402877437 ns/iter |
1.01 |
JSON_Parse_Integer |
4875.977380455146 ns/iter |
4823.447785399584 ns/iter |
1.01 |
JSON_Parse_String_NonSSO_Plain |
8598.370604962029 ns/iter |
8633.281829616317 ns/iter |
1.00 |
JSON_Parse_String_SSO_Plain |
3833.940536748882 ns/iter |
3682.263593368196 ns/iter |
1.04 |
JSON_Parse_String_Escape_Heavy |
19947.01294869338 ns/iter |
19670.632458903627 ns/iter |
1.01 |
JSON_Parse_Object_Short_Keys |
11382.499886234385 ns/iter |
11263.135676041346 ns/iter |
1.01 |
JSON_Parse_Object_Scalar_Properties |
5747.766525132741 ns/iter |
5791.0467434151415 ns/iter |
0.99 |
JSON_Parse_Object_Array_Properties |
9157.647130328542 ns/iter |
9300.376098325889 ns/iter |
0.98 |
JSON_Parse_Object_Object_Properties |
9559.12135445663 ns/iter |
9317.19090727484 ns/iter |
1.03 |
JSON_Parse_Nested_Containers |
72206.55890298118 ns/iter |
71682.92794086946 ns/iter |
1.01 |
JSON_From_String_Copy |
19.713315580600216 ns/iter |
20.06221738450726 ns/iter |
0.98 |
JSON_From_String_Temporary |
16.27254429612618 ns/iter |
16.638393368666897 ns/iter |
0.98 |
JSON_Number_To_Double |
19.380398790780923 ns/iter |
19.398160353510043 ns/iter |
1.00 |
JSON_Object_At_Last_Key/8 |
9.21196492258098 ns/iter |
9.154647436679758 ns/iter |
1.01 |
JSON_Object_At_Last_Key/32 |
35.67624126026627 ns/iter |
34.505750178185615 ns/iter |
1.03 |
JSON_Object_At_Last_Key/128 |
135.79621709273832 ns/iter |
135.87195090238586 ns/iter |
1.00 |
JSON_Object_At_Last_Key/512 |
558.9581004225328 ns/iter |
559.005723415601 ns/iter |
1.00 |
JSON_Fast_Hash_Helm_Chart_Lock |
55.039202643504865 ns/iter |
54.49931767200868 ns/iter |
1.01 |
JSON_Equality_Helm_Chart_Lock |
159.4056536686233 ns/iter |
158.6630738219131 ns/iter |
1.00 |
JSON_Divisible_By_Decimal |
233.47172237784474 ns/iter |
231.82066635872465 ns/iter |
1.01 |
JSON_String_Equal/10 |
6.072872174850467 ns/iter |
6.794522495802527 ns/iter |
0.89 |
JSON_String_Equal/100 |
6.776386714557648 ns/iter |
6.778834698953305 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7124335415585996 ns/iter |
0.7140417498107735 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
21.93698575696943 ns/iter |
21.938711501311868 ns/iter |
1.00 |
JSON_String_Fast_Hash/10 |
1.4077138708929877 ns/iter |
1.4078148236700916 ns/iter |
1.00 |
JSON_String_Fast_Hash/100 |
1.4079595612628424 ns/iter |
1.4075339099853694 ns/iter |
1.00 |
JSON_String_Key_Hash/10 |
1.0867982535567005 ns/iter |
1.0893436798319565 ns/iter |
1.00 |
JSON_String_Key_Hash/100 |
15.288758975542184 ns/iter |
14.763621194950764 ns/iter |
1.04 |
JSON_Object_Defines_Miss_Same_Length |
3.5182031305031347 ns/iter |
3.519139849531528 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Small |
3.5160056066957694 ns/iter |
3.5181473212932435 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Large |
3.8693683669364756 ns/iter |
3.8719049364939924 ns/iter |
1.00 |
Regex_Lower_S_Or_Upper_S_Asterisk |
0.7038586766410238 ns/iter |
0.7060370013064149 ns/iter |
1.00 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.0553196413122348 ns/iter |
1.0562125528443882 ns/iter |
1.00 |
Regex_Period_Asterisk |
1.0555130958841699 ns/iter |
1.0562504308811422 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
0.7044354374548619 ns/iter |
0.7039920750985573 ns/iter |
1.00 |
Regex_Period_Plus |
0.7058769507820467 ns/iter |
0.7047698050446635 ns/iter |
1.00 |
Regex_Period |
1.0557758145293352 ns/iter |
1.0579770660072063 ns/iter |
1.00 |
Regex_Caret_Period_Plus_Dollar |
1.055655911272324 ns/iter |
1.0563234098574616 ns/iter |
1.00 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
0.7044939487419444 ns/iter |
0.704299233392722 ns/iter |
1.00 |
Regex_Caret_Period_Asterisk_Dollar |
0.7037332923252735 ns/iter |
0.7041406351489582 ns/iter |
1.00 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.0555168921330589 ns/iter |
1.0561849796289775 ns/iter |
1.00 |
Regex_Caret_X_Hyphen |
3.8680838211465702 ns/iter |
3.87125281062893 ns/iter |
1.00 |
Regex_Period_Md_Dollar |
32.533128722647724 ns/iter |
33.7836621868042 ns/iter |
0.96 |
Regex_Caret_Slash_Period_Asterisk |
4.21940668153223 ns/iter |
4.223640382144998 ns/iter |
1.00 |
Regex_Caret_Period_Range_Dollar |
1.4082716324694655 ns/iter |
1.4074368738473058 ns/iter |
1.00 |
Regex_Nested_Backtrack |
39.288133859535726 ns/iter |
38.8195811463989 ns/iter |
1.01 |
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: f7c1988 | Previous: af38cb0 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.480903387830921 ns/iter |
2.197502648325486 ns/iter |
1.13 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.461671653953877 ns/iter |
2.1881385958358783 ns/iter |
1.13 |
Regex_Period_Asterisk |
2.4694651055282217 ns/iter |
2.2127298016128987 ns/iter |
1.12 |
Regex_Group_Period_Asterisk_Group |
2.5139776819186146 ns/iter |
2.191676851426093 ns/iter |
1.15 |
Regex_Period_Plus |
3.5176859792600133 ns/iter |
2.23626165138012 ns/iter |
1.57 |
Regex_Period |
3.515043774519789 ns/iter |
2.228072870222253 ns/iter |
1.58 |
Regex_Caret_Period_Plus_Dollar |
3.866553376237259 ns/iter |
2.490461964274203 ns/iter |
1.55 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
3.877900893533532 ns/iter |
2.4901509176072727 ns/iter |
1.56 |
Regex_Caret_Period_Asterisk_Dollar |
2.463050761567048 ns/iter |
2.1922256578425086 ns/iter |
1.12 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.461318607703665 ns/iter |
2.185839256147704 ns/iter |
1.13 |
Regex_Caret_X_Hyphen |
7.267311273638022 ns/iter |
5.9231336844639495 ns/iter |
1.23 |
Regex_Period_Md_Dollar |
26.669411176148937 ns/iter |
33.57914088600429 ns/iter |
0.79 |
Regex_Caret_Slash_Period_Asterisk |
7.358232975698368 ns/iter |
5.915232410837953 ns/iter |
1.24 |
Regex_Caret_Period_Range_Dollar |
3.8664307815165433 ns/iter |
3.7343155668696233 ns/iter |
1.04 |
Regex_Nested_Backtrack |
37.03796813508905 ns/iter |
54.77455879524754 ns/iter |
0.68 |
JSON_Array_Of_Objects_Unique |
420.1648667426086 ns/iter |
403.7736991781672 ns/iter |
1.04 |
JSON_Parse_1 |
4644.078353800226 ns/iter |
4947.470893037218 ns/iter |
0.94 |
JSON_Parse_Real |
5242.384245187589 ns/iter |
5301.136839929793 ns/iter |
0.99 |
JSON_Parse_Decimal |
7586.6835399036745 ns/iter |
8203.560480515514 ns/iter |
0.92 |
JSON_Parse_Schema_ISO_Language |
3549938.8615381834 ns/iter |
3549754.324999981 ns/iter |
1.00 |
JSON_Parse_Integer |
4089.234056538083 ns/iter |
3717.5701672688106 ns/iter |
1.10 |
JSON_Parse_String_NonSSO_Plain |
5135.142593393479 ns/iter |
4999.555981893285 ns/iter |
1.03 |
JSON_Parse_String_SSO_Plain |
2764.9546666141255 ns/iter |
2766.019231984786 ns/iter |
1.00 |
JSON_Parse_String_Escape_Heavy |
14304.580488600965 ns/iter |
14537.817643093247 ns/iter |
0.98 |
JSON_Parse_Object_Short_Keys |
8080.354674842895 ns/iter |
8309.400504762752 ns/iter |
0.97 |
JSON_Parse_Object_Scalar_Properties |
4121.386228214715 ns/iter |
4297.636081394434 ns/iter |
0.96 |
JSON_Parse_Object_Array_Properties |
5666.545323300329 ns/iter |
5950.7746188326755 ns/iter |
0.95 |
JSON_Parse_Object_Object_Properties |
5573.091012956745 ns/iter |
5931.902781663764 ns/iter |
0.94 |
JSON_Parse_Nested_Containers |
44648.37745440661 ns/iter |
45278.580992966956 ns/iter |
0.99 |
JSON_From_String_Copy |
21.101348315051947 ns/iter |
19.64091407002738 ns/iter |
1.07 |
JSON_From_String_Temporary |
18.291081483358376 ns/iter |
17.42580216740019 ns/iter |
1.05 |
JSON_Number_To_Double |
22.549306321100868 ns/iter |
23.706291602676952 ns/iter |
0.95 |
JSON_Object_At_Last_Key/8 |
4.731349310141331 ns/iter |
3.4852463105053224 ns/iter |
1.36 |
JSON_Object_At_Last_Key/32 |
13.633657441328639 ns/iter |
11.856601055281079 ns/iter |
1.15 |
JSON_Object_At_Last_Key/128 |
47.28956216749302 ns/iter |
48.934023762690494 ns/iter |
0.97 |
JSON_Object_At_Last_Key/512 |
368.46587187711884 ns/iter |
385.9599085293739 ns/iter |
0.95 |
JSON_Fast_Hash_Helm_Chart_Lock |
65.11839732304205 ns/iter |
56.89103351317706 ns/iter |
1.14 |
JSON_Equality_Helm_Chart_Lock |
175.92315664983457 ns/iter |
165.49330239614187 ns/iter |
1.06 |
JSON_Divisible_By_Decimal |
254.9036819124021 ns/iter |
247.71796600392696 ns/iter |
1.03 |
JSON_String_Equal/10 |
6.71394630936144 ns/iter |
6.95164612546712 ns/iter |
0.97 |
JSON_String_Equal/100 |
7.389327955750936 ns/iter |
7.477420725316046 ns/iter |
0.99 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
1.054581531506471 ns/iter |
0.9367508079170248 ns/iter |
1.13 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
12.413908105530954 ns/iter |
10.587340729749931 ns/iter |
1.17 |
JSON_String_Fast_Hash/10 |
2.1107132422120563 ns/iter |
2.1797568638653253 ns/iter |
0.97 |
JSON_String_Fast_Hash/100 |
2.113170983741857 ns/iter |
2.1817966603101535 ns/iter |
0.97 |
JSON_String_Key_Hash/10 |
2.4646079997726122 ns/iter |
2.1811129926122743 ns/iter |
1.13 |
JSON_String_Key_Hash/100 |
7.8094336313899975 ns/iter |
8.048969776680043 ns/iter |
0.97 |
JSON_Object_Defines_Miss_Same_Length |
2.926065721226974 ns/iter |
2.7648993023507575 ns/iter |
1.06 |
JSON_Object_Defines_Miss_Too_Small |
2.915397263233137 ns/iter |
2.6134206861141496 ns/iter |
1.12 |
JSON_Object_Defines_Miss_Too_Large |
2.92414198137121 ns/iter |
2.649103334369561 ns/iter |
1.10 |
Pointer_Object_Traverse |
25.530616746636483 ns/iter |
24.506486526331912 ns/iter |
1.04 |
Pointer_Object_Try_Traverse |
30.613989706176707 ns/iter |
28.725897137189254 ns/iter |
1.07 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
185.94138611642856 ns/iter |
207.0548832507687 ns/iter |
0.90 |
Pointer_Walker_Schema_ISO_Language |
1750513.8850000892 ns/iter |
1672657.8333334818 ns/iter |
1.05 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1287179.4642201124 ns/iter |
1248879.7243816233 ns/iter |
1.03 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1650717.1431870563 ns/iter |
1767497.0982365937 ns/iter |
0.93 |
Pointer_Position_Tracker_Get_Deeply_Nested |
764.4524842966825 ns/iter |
697.0169323590957 ns/iter |
1.10 |
URITemplateRouter_Create |
29700.048967100305 ns/iter |
32341.111121326303 ns/iter |
0.92 |
URITemplateRouter_Match |
176.83786079797073 ns/iter |
176.22882268863955 ns/iter |
1.00 |
URITemplateRouter_Match_BasePath |
210.44765276641814 ns/iter |
209.3089781017587 ns/iter |
1.01 |
URITemplateRouterView_Restore |
8701.672628457336 ns/iter |
7962.393250069321 ns/iter |
1.09 |
URITemplateRouterView_Match |
172.49328292877232 ns/iter |
164.3873207965839 ns/iter |
1.05 |
URITemplateRouterView_Match_BasePath |
196.92926472107916 ns/iter |
188.83051079023616 ns/iter |
1.04 |
URITemplateRouterView_Arguments |
459.2453197792771 ns/iter |
440.3382053899116 ns/iter |
1.04 |
JSONL_Parse_Large |
9088187.849315172 ns/iter |
10568789.530302845 ns/iter |
0.86 |
JSONL_Parse_Large_GZIP |
10763868.723076414 ns/iter |
12194158.561402345 ns/iter |
0.88 |
HTML_Build_Table_100000 |
71729612.50000754 ns/iter |
72996163.90000665 ns/iter |
0.98 |
HTML_Render_Table_100000 |
4945470.391304014 ns/iter |
5413422.462121768 ns/iter |
0.91 |
GZIP_Compress_ISO_Language_Set_3_Locations |
35443846.19999619 ns/iter |
32634570.380954154 ns/iter |
1.09 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4257369.231707777 ns/iter |
4091566.0760238525 ns/iter |
1.04 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2125121.617021217 ns/iter |
1866126.5641711794 ns/iter |
1.14 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
278771.1215469653 ns/iter |
357281.36855536286 ns/iter |
0.78 |
JOSE_VerifySignature_RS256 |
63803.18504435627 ns/iter |
57971.64649470756 ns/iter |
1.10 |
JOSE_VerifySignature_ES512 |
2656297.3840302615 ns/iter |
2448227.4705879497 ns/iter |
1.08 |
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: f7c1988 | Previous: af38cb0 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
3.865889457381659 ns/iter |
3.872538504464197 ns/iter |
1.00 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
3.838411272321096 ns/iter |
3.8409665178568932 ns/iter |
1.00 |
Regex_Period_Asterisk |
3.840426421713974 ns/iter |
3.8473210645584506 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
3.8379294574325056 ns/iter |
3.85218535026395 ns/iter |
1.00 |
Regex_Period_Plus |
3.5633134988969353 ns/iter |
3.5711047488844683 ns/iter |
1.00 |
Regex_Period |
3.567868654343888 ns/iter |
3.5700738560288534 ns/iter |
1.00 |
Regex_Caret_Period_Plus_Dollar |
3.565184302464686 ns/iter |
3.581749436368276 ns/iter |
1.00 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
3.56567869978532 ns/iter |
3.568939771208967 ns/iter |
1.00 |
Regex_Caret_Period_Asterisk_Dollar |
3.838139508928354 ns/iter |
3.84103177885544 ns/iter |
1.00 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
3.8396924931426635 ns/iter |
3.8462860645602324 ns/iter |
1.00 |
Regex_Caret_X_Hyphen |
6.035384821428482 ns/iter |
6.03770267857178 ns/iter |
1.00 |
Regex_Period_Md_Dollar |
53.01141817179807 ns/iter |
46.595251040072384 ns/iter |
1.14 |
Regex_Caret_Slash_Period_Asterisk |
5.875802999998997 ns/iter |
5.766965999999912 ns/iter |
1.02 |
Regex_Caret_Period_Range_Dollar |
4.404828114184664 ns/iter |
4.1165935695908304 ns/iter |
1.07 |
Regex_Nested_Backtrack |
53.65871999999854 ns/iter |
52.110670000001846 ns/iter |
1.03 |
JSON_Array_Of_Objects_Unique |
442.83689285395695 ns/iter |
402.7592437347098 ns/iter |
1.10 |
JSON_Parse_1 |
7727.939732143443 ns/iter |
7285.875000000124 ns/iter |
1.06 |
JSON_Parse_Real |
13101.739285713977 ns/iter |
12717.782956327173 ns/iter |
1.03 |
JSON_Parse_Decimal |
9527.933357440574 ns/iter |
8689.300223214044 ns/iter |
1.10 |
JSON_Parse_Schema_ISO_Language |
7395806.666666734 ns/iter |
6212367.85714225 ns/iter |
1.19 |
JSON_Parse_Integer |
4956.338392856554 ns/iter |
4637.887138140302 ns/iter |
1.07 |
JSON_Parse_String_NonSSO_Plain |
6021.710714285129 ns/iter |
6442.597098213249 ns/iter |
0.93 |
JSON_Parse_String_SSO_Plain |
2917.6919642850407 ns/iter |
2733.9184681759507 ns/iter |
1.07 |
JSON_Parse_String_Escape_Heavy |
17270.770089286965 ns/iter |
16869.902030591893 ns/iter |
1.02 |
JSON_Parse_Object_Short_Keys |
10396.46296221806 ns/iter |
10273.537499999818 ns/iter |
1.01 |
JSON_Parse_Object_Scalar_Properties |
5310.528571430138 ns/iter |
5251.585714285666 ns/iter |
1.01 |
JSON_Parse_Object_Array_Properties |
8898.694202257635 ns/iter |
8905.702653113492 ns/iter |
1.00 |
JSON_Parse_Object_Object_Properties |
9035.616071429838 ns/iter |
9024.257034565797 ns/iter |
1.00 |
JSON_Parse_Nested_Containers |
63389.40178571713 ns/iter |
64320.60267857714 ns/iter |
0.99 |
JSON_From_String_Copy |
48.86194364600967 ns/iter |
48.489293202082806 ns/iter |
1.01 |
JSON_From_String_Temporary |
62.90600892857665 ns/iter |
62.43810714286114 ns/iter |
1.01 |
JSON_Number_To_Double |
104.5905781250056 ns/iter |
105.38733011664314 ns/iter |
0.99 |
JSON_Object_At_Last_Key/8 |
5.91730803571368 ns/iter |
6.308768749999923 ns/iter |
0.94 |
JSON_Object_At_Last_Key/32 |
21.03865197355903 ns/iter |
19.30228708887004 ns/iter |
1.09 |
JSON_Object_At_Last_Key/128 |
80.5618660714101 ns/iter |
72.18206473214346 ns/iter |
1.12 |
JSON_Object_At_Last_Key/512 |
331.37742677778215 ns/iter |
339.58285453877323 ns/iter |
0.98 |
JSON_Fast_Hash_Helm_Chart_Lock |
52.386821428577996 ns/iter |
53.526609999994434 ns/iter |
0.98 |
JSON_Equality_Helm_Chart_Lock |
220.6422500000116 ns/iter |
243.62543750001464 ns/iter |
0.91 |
JSON_Divisible_By_Decimal |
279.3654116355214 ns/iter |
305.3213702981484 ns/iter |
0.91 |
JSON_String_Equal/10 |
11.014804687501822 ns/iter |
11.232076562500026 ns/iter |
0.98 |
JSON_String_Equal/100 |
12.832834764138562 ns/iter |
13.17646071428718 ns/iter |
0.97 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
1.64541413056607 ns/iter |
1.7135133928571278 ns/iter |
0.96 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
11.907745535718764 ns/iter |
13.281283928571545 ns/iter |
0.90 |
JSON_String_Fast_Hash/10 |
3.8620665564652494 ns/iter |
3.5863702614528856 ns/iter |
1.08 |
JSON_String_Fast_Hash/100 |
3.6188405292511088 ns/iter |
3.5692446364832704 ns/iter |
1.01 |
JSON_String_Key_Hash/10 |
3.930010602679295 ns/iter |
3.8428944574236503 ns/iter |
1.02 |
JSON_String_Key_Hash/100 |
8.620098175800356 ns/iter |
8.482015624999205 ns/iter |
1.02 |
JSON_Object_Defines_Miss_Same_Length |
3.2457337550720267 ns/iter |
3.100349012320647 ns/iter |
1.05 |
JSON_Object_Defines_Miss_Too_Small |
4.099234141721763 ns/iter |
4.032094516128773 ns/iter |
1.02 |
JSON_Object_Defines_Miss_Too_Large |
3.4260923491033117 ns/iter |
3.2966625051512373 ns/iter |
1.04 |
Pointer_Object_Traverse |
55.86452678571163 ns/iter |
52.97482142857745 ns/iter |
1.05 |
Pointer_Object_Try_Traverse |
55.2582142857107 ns/iter |
52.94655000000148 ns/iter |
1.04 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
143.82135965084709 ns/iter |
123.19910714286462 ns/iter |
1.17 |
Pointer_Walker_Schema_ISO_Language |
7819562.222223592 ns/iter |
5820558.928571172 ns/iter |
1.34 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1936611.5942026172 ns/iter |
1858166.756032208 ns/iter |
1.04 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
3037987.2881359025 ns/iter |
2864016.4658635836 ns/iter |
1.06 |
Pointer_Position_Tracker_Get_Deeply_Nested |
412.4760841836437 ns/iter |
417.87948826779126 ns/iter |
0.99 |
URITemplateRouter_Create |
30002.951779127332 ns/iter |
31182.098214291695 ns/iter |
0.96 |
URITemplateRouter_Match |
170.61573240734253 ns/iter |
170.7468975946286 ns/iter |
1.00 |
URITemplateRouter_Match_BasePath |
192.30002403793455 ns/iter |
191.96658856839903 ns/iter |
1.00 |
URITemplateRouterView_Restore |
18772.498861596323 ns/iter |
19370.286341844057 ns/iter |
0.97 |
URITemplateRouterView_Match |
133.7443132256897 ns/iter |
133.67674999999835 ns/iter |
1.00 |
URITemplateRouterView_Match_BasePath |
152.14741071426982 ns/iter |
152.2768190948244 ns/iter |
1.00 |
URITemplateRouterView_Arguments |
460.1085039888163 ns/iter |
455.34331330089753 ns/iter |
1.01 |
JSONL_Parse_Large |
25455657.14285658 ns/iter |
25758739.285712246 ns/iter |
0.99 |
JSONL_Parse_Large_GZIP |
25829392.307689257 ns/iter |
25832571.428574216 ns/iter |
1.00 |
HTML_Build_Table_100000 |
74021327.27274461 ns/iter |
72651445.4545395 ns/iter |
1.02 |
HTML_Render_Table_100000 |
7204904.444443451 ns/iter |
6717031.111111282 ns/iter |
1.07 |
GZIP_Compress_ISO_Language_Set_3_Locations |
28348171.999996338 ns/iter |
28577276.00000544 ns/iter |
0.99 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
7753862.222221465 ns/iter |
7314595.555557288 ns/iter |
1.06 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1719755.2825554288 ns/iter |
1718950.8599508584 ns/iter |
1.00 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
429656.4374999434 ns/iter |
426497.04004650674 ns/iter |
1.01 |
JOSE_VerifySignature_RS256 |
18388.645434331906 ns/iter |
18654.415989388683 ns/iter |
0.99 |
JOSE_VerifySignature_ES512 |
1221875.1562500075 ns/iter |
1182538.2142855492 ns/iter |
1.03 |
This comment was automatically generated by workflow using github-action-benchmark.
Signed-off-by: Juan Cruz Viotti jv@jviotti.com