Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
🤖 Augment PR SummarySummary: This PR expands the text utilities by adding string-level predicates for ASCII classification. Changes:
Technical Notes: The new APIs explicitly treat an empty string as 🤖 Was this summary useful? React with 👍 or 👎 |
There was a problem hiding this comment.
Benchmark (macos/llvm)
Details
| Benchmark suite | Current: 62be144 | Previous: a39f279 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
1.7697337358368288 ns/iter |
1.7197199751450893 ns/iter |
1.03 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.6965446960484667 ns/iter |
1.680333885866911 ns/iter |
1.01 |
Regex_Period_Asterisk |
1.7299196837404407 ns/iter |
1.6955596936911126 ns/iter |
1.02 |
Regex_Group_Period_Asterisk_Group |
1.705688839170544 ns/iter |
1.699299680609889 ns/iter |
1.00 |
Regex_Period_Plus |
2.024418376098977 ns/iter |
2.2037231194035694 ns/iter |
0.92 |
Regex_Period |
2.0335546890707037 ns/iter |
2.100726457717406 ns/iter |
0.97 |
Regex_Caret_Period_Plus_Dollar |
2.0207443020862086 ns/iter |
2.1542747589624422 ns/iter |
0.94 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.18597305930139 ns/iter |
2.074595552833167 ns/iter |
1.05 |
Regex_Caret_Period_Asterisk_Dollar |
2.0206255060834986 ns/iter |
1.7185965213453946 ns/iter |
1.18 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.958349824203154 ns/iter |
1.7207448935561975 ns/iter |
1.14 |
Regex_Caret_X_Hyphen |
6.0940469060524975 ns/iter |
6.111103546072734 ns/iter |
1.00 |
Regex_Period_Md_Dollar |
19.61074613149029 ns/iter |
17.570647721169745 ns/iter |
1.12 |
Regex_Caret_Slash_Period_Asterisk |
5.744746660000146 ns/iter |
5.69314458000008 ns/iter |
1.01 |
Regex_Caret_Period_Range_Dollar |
2.161609487840094 ns/iter |
2.4503161355134226 ns/iter |
0.88 |
Regex_Nested_Backtrack |
26.18585276120704 ns/iter |
31.61033730978404 ns/iter |
0.83 |
JSON_Array_Of_Objects_Unique |
354.50962718620275 ns/iter |
351.2262603987262 ns/iter |
1.01 |
JSON_Parse_1 |
3704.7672416537425 ns/iter |
3827.3739299366857 ns/iter |
0.97 |
JSON_Parse_Real |
5108.737291041008 ns/iter |
5479.0054868494735 ns/iter |
0.93 |
JSON_Parse_Decimal |
5325.347709610983 ns/iter |
5549.291437675618 ns/iter |
0.96 |
JSON_Parse_Schema_ISO_Language |
3920150.862069315 ns/iter |
3530707.0053189374 ns/iter |
1.11 |
JSON_Parse_Integer |
3049.558793811758 ns/iter |
2995.224673295917 ns/iter |
1.02 |
JSON_Parse_String_NonSSO_Plain |
3677.7046046832925 ns/iter |
3517.7434571745557 ns/iter |
1.05 |
JSON_Parse_String_SSO_Plain |
1905.9787760877582 ns/iter |
1864.5650930924958 ns/iter |
1.02 |
JSON_Parse_String_Escape_Heavy |
15677.062745564757 ns/iter |
18284.238949224615 ns/iter |
0.86 |
JSON_Parse_Object_Short_Keys |
5052.752919998511 ns/iter |
5671.222349174087 ns/iter |
0.89 |
JSON_Parse_Object_Scalar_Properties |
2666.7521540285597 ns/iter |
2752.6782978202386 ns/iter |
0.97 |
JSON_Parse_Object_Array_Properties |
3450.070814636062 ns/iter |
3407.3990409702305 ns/iter |
1.01 |
JSON_Parse_Object_Object_Properties |
3477.3774323984485 ns/iter |
3515.084151332803 ns/iter |
0.99 |
JSON_Parse_Nested_Containers |
29798.786987289735 ns/iter |
27554.481104827144 ns/iter |
1.08 |
JSON_From_String_Copy |
26.3245329706438 ns/iter |
24.25552158079658 ns/iter |
1.09 |
JSON_From_String_Temporary |
20.52345299966003 ns/iter |
19.902292390733205 ns/iter |
1.03 |
JSON_Number_To_Double |
34.685310313808564 ns/iter |
33.27828695025208 ns/iter |
1.04 |
JSON_Object_At_Last_Key/8 |
4.013231522711431 ns/iter |
3.7032010941585374 ns/iter |
1.08 |
JSON_Object_At_Last_Key/32 |
13.725637516541475 ns/iter |
12.291770924516841 ns/iter |
1.12 |
JSON_Object_At_Last_Key/128 |
69.1872773872898 ns/iter |
56.02902156524005 ns/iter |
1.23 |
JSON_Object_At_Last_Key/512 |
201.32814671391196 ns/iter |
192.73087990156716 ns/iter |
1.04 |
JSON_Fast_Hash_Helm_Chart_Lock |
66.66888747250016 ns/iter |
58.55808714016099 ns/iter |
1.14 |
JSON_Equality_Helm_Chart_Lock |
144.22309039020877 ns/iter |
133.56231833687752 ns/iter |
1.08 |
JSON_Divisible_By_Decimal |
185.8783809168335 ns/iter |
174.6333234322889 ns/iter |
1.06 |
JSON_String_Equal/10 |
7.373978863087019 ns/iter |
6.766790582439124 ns/iter |
1.09 |
JSON_String_Equal/100 |
7.977062795597898 ns/iter |
6.976058061846907 ns/iter |
1.14 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.9403189074691323 ns/iter |
0.7745686006926514 ns/iter |
1.21 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
3.8179909677014567 ns/iter |
3.346596793164343 ns/iter |
1.14 |
JSON_String_Fast_Hash/10 |
2.744501738523062 ns/iter |
2.4076243889381552 ns/iter |
1.14 |
JSON_String_Fast_Hash/100 |
2.1536335893799556 ns/iter |
2.0687341168380042 ns/iter |
1.04 |
JSON_String_Key_Hash/10 |
1.4138166101777725 ns/iter |
1.3673434706960788 ns/iter |
1.03 |
JSON_String_Key_Hash/100 |
2.554693975890932 ns/iter |
2.2229264146316727 ns/iter |
1.15 |
JSON_Object_Defines_Miss_Same_Length |
2.6999259724039626 ns/iter |
2.3976907847360827 ns/iter |
1.13 |
JSON_Object_Defines_Miss_Too_Small |
2.4252289484441243 ns/iter |
2.3691710049553003 ns/iter |
1.02 |
JSON_Object_Defines_Miss_Too_Large |
2.4257032014277633 ns/iter |
2.359811877432601 ns/iter |
1.03 |
Pointer_Object_Traverse |
14.329384641347733 ns/iter |
13.7204331474882 ns/iter |
1.04 |
Pointer_Object_Try_Traverse |
26.044678282551168 ns/iter |
23.04859932898614 ns/iter |
1.13 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
177.64188586586374 ns/iter |
168.35544326925572 ns/iter |
1.06 |
Pointer_Walker_Schema_ISO_Language |
3009931.1502151415 ns/iter |
3457281.5166054782 ns/iter |
0.87 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
902474.2654400216 ns/iter |
918755.8305519662 ns/iter |
0.98 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1173175.629213419 ns/iter |
1194224.3815551503 ns/iter |
0.98 |
Pointer_Position_Tracker_Get_Deeply_Nested |
347.45976285581577 ns/iter |
347.39185255657907 ns/iter |
1.00 |
URITemplateRouter_Create |
22563.341936292436 ns/iter |
23203.27181490395 ns/iter |
0.97 |
URITemplateRouter_Match |
189.04874871889925 ns/iter |
167.6012765719765 ns/iter |
1.13 |
URITemplateRouter_Match_BasePath |
203.51194845524068 ns/iter |
191.09579049977373 ns/iter |
1.06 |
URITemplateRouterView_Restore |
9191.944467564876 ns/iter |
9254.417493273564 ns/iter |
0.99 |
URITemplateRouterView_Match |
130.97565288053644 ns/iter |
129.59768149083155 ns/iter |
1.01 |
URITemplateRouterView_Match_BasePath |
147.615786473611 ns/iter |
149.60557010356706 ns/iter |
0.99 |
URITemplateRouterView_Arguments |
398.2411258989998 ns/iter |
402.50786715855355 ns/iter |
0.99 |
JSONL_Parse_Large |
12374707.620689023 ns/iter |
12441377.155173069 ns/iter |
0.99 |
JSONL_Parse_Large_GZIP |
13266270.038461523 ns/iter |
13525933.962264474 ns/iter |
0.98 |
HTML_Build_Table_100000 |
65539371.27273457 ns/iter |
63792439.36364467 ns/iter |
1.03 |
HTML_Render_Table_100000 |
3453403.2643173486 ns/iter |
3028550.2049184 ns/iter |
1.14 |
GZIP_Compress_ISO_Language_Set_3_Locations |
26875321.000000406 ns/iter |
26609421.461535893 ns/iter |
1.01 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
5413165.9919346105 ns/iter |
7142633.1428569015 ns/iter |
0.76 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1586110.131455198 ns/iter |
1954141.3002753337 ns/iter |
0.81 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
259330.48102679715 ns/iter |
294543.9485083636 ns/iter |
0.88 |
JOSE_VerifySignature_RS256 |
20444.735604546288 ns/iter |
22210.742212107318 ns/iter |
0.92 |
JOSE_VerifySignature_ES512 |
937659.0158520794 ns/iter |
1026659.7517731033 ns/iter |
0.91 |
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: 62be144 | Previous: a39f279 | Ratio |
|---|---|---|---|
JOSE_VerifySignature_RS256 |
24634.76601141332 ns/iter |
22205.696931690138 ns/iter |
1.11 |
JOSE_VerifySignature_ES512 |
641754.2681358494 ns/iter |
583885.3102881174 ns/iter |
1.10 |
GZIP_Compress_ISO_Language_Set_3_Locations |
39352427.7777778 ns/iter |
36219478.26315806 ns/iter |
1.09 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4059197.9017344886 ns/iter |
4146985.7083334154 ns/iter |
0.98 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2283866.003268319 ns/iter |
2018209.6826346705 ns/iter |
1.13 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
277591.9079365196 ns/iter |
376338.9130675382 ns/iter |
0.74 |
HTML_Build_Table_100000 |
70380770.79999994 ns/iter |
59805324.83333907 ns/iter |
1.18 |
HTML_Render_Table_100000 |
1954638.8997215624 ns/iter |
1821362.778645863 ns/iter |
1.07 |
JSONL_Parse_Large |
12466000.446427269 ns/iter |
13136055.24528354 ns/iter |
0.95 |
JSONL_Parse_Large_GZIP |
14009097.480000036 ns/iter |
14572762.787234424 ns/iter |
0.96 |
URITemplateRouter_Create |
29321.361580504865 ns/iter |
30248.432460642933 ns/iter |
0.97 |
URITemplateRouter_Match |
152.0840299010423 ns/iter |
156.62330590246944 ns/iter |
0.97 |
URITemplateRouter_Match_BasePath |
179.683657714699 ns/iter |
180.2561444607755 ns/iter |
1.00 |
URITemplateRouterView_Restore |
8645.01863331255 ns/iter |
7859.849567170904 ns/iter |
1.10 |
URITemplateRouterView_Match |
126.11019178829638 ns/iter |
126.12495053313208 ns/iter |
1.00 |
URITemplateRouterView_Match_BasePath |
142.3281333658186 ns/iter |
143.31847546142615 ns/iter |
0.99 |
URITemplateRouterView_Arguments |
457.9090838274112 ns/iter |
470.5258255766636 ns/iter |
0.97 |
Pointer_Object_Traverse |
34.22042606618841 ns/iter |
28.3554285706917 ns/iter |
1.21 |
Pointer_Object_Try_Traverse |
25.019650783208917 ns/iter |
23.26461962645765 ns/iter |
1.08 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
151.1216140546455 ns/iter |
151.44941761788203 ns/iter |
1.00 |
Pointer_Walker_Schema_ISO_Language |
1870466.1320754595 ns/iter |
1848098.617414217 ns/iter |
1.01 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1534514.940789621 ns/iter |
1533503.951754349 ns/iter |
1.00 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1667736.809069271 ns/iter |
1683458.9639422859 ns/iter |
0.99 |
Pointer_Position_Tracker_Get_Deeply_Nested |
681.7431827378557 ns/iter |
607.2673605998569 ns/iter |
1.12 |
JSON_Array_Of_Objects_Unique |
408.5303964737235 ns/iter |
412.83683075533577 ns/iter |
0.99 |
JSON_Parse_1 |
7454.098308623279 ns/iter |
7564.656695018537 ns/iter |
0.99 |
JSON_Parse_Real |
6488.031021191497 ns/iter |
6723.576713526104 ns/iter |
0.96 |
JSON_Parse_Decimal |
9553.161194558468 ns/iter |
11312.120370820714 ns/iter |
0.84 |
JSON_Parse_Schema_ISO_Language |
5040810.589928029 ns/iter |
5113708.661764683 ns/iter |
0.99 |
JSON_Parse_Integer |
4818.879575509022 ns/iter |
4931.732960790782 ns/iter |
0.98 |
JSON_Parse_String_NonSSO_Plain |
8571.307084028183 ns/iter |
8641.274043749327 ns/iter |
0.99 |
JSON_Parse_String_SSO_Plain |
3637.7969820390213 ns/iter |
4005.5548266006604 ns/iter |
0.91 |
JSON_Parse_String_Escape_Heavy |
19817.879694736966 ns/iter |
20721.342208043854 ns/iter |
0.96 |
JSON_Parse_Object_Short_Keys |
11364.138022864343 ns/iter |
14540.882975191818 ns/iter |
0.78 |
JSON_Parse_Object_Scalar_Properties |
5763.856648188694 ns/iter |
5853.009663212023 ns/iter |
0.98 |
JSON_Parse_Object_Array_Properties |
8798.804402846643 ns/iter |
10172.234627195652 ns/iter |
0.86 |
JSON_Parse_Object_Object_Properties |
9125.523015283006 ns/iter |
10552.548219908875 ns/iter |
0.86 |
JSON_Parse_Nested_Containers |
72603.77541979685 ns/iter |
76260.89549785914 ns/iter |
0.95 |
JSON_From_String_Copy |
19.693617337786797 ns/iter |
18.296355967639112 ns/iter |
1.08 |
JSON_From_String_Temporary |
16.625631922413206 ns/iter |
15.353518485012568 ns/iter |
1.08 |
JSON_Number_To_Double |
19.364590689689514 ns/iter |
20.57570761850717 ns/iter |
0.94 |
JSON_Object_At_Last_Key/8 |
9.152096560912007 ns/iter |
8.103287574886822 ns/iter |
1.13 |
JSON_Object_At_Last_Key/32 |
35.17312255811764 ns/iter |
31.47942361352951 ns/iter |
1.12 |
JSON_Object_At_Last_Key/128 |
135.97880335352497 ns/iter |
127.18813085205517 ns/iter |
1.07 |
JSON_Object_At_Last_Key/512 |
559.1857664122942 ns/iter |
517.3307099418832 ns/iter |
1.08 |
JSON_Fast_Hash_Helm_Chart_Lock |
53.83052911559651 ns/iter |
65.59112721984854 ns/iter |
0.82 |
JSON_Equality_Helm_Chart_Lock |
160.57892002461656 ns/iter |
152.89799355857988 ns/iter |
1.05 |
JSON_Divisible_By_Decimal |
231.74357842681863 ns/iter |
239.39866183033277 ns/iter |
0.97 |
JSON_String_Equal/10 |
6.073756723909049 ns/iter |
6.306938855232069 ns/iter |
0.96 |
JSON_String_Equal/100 |
6.982191205682589 ns/iter |
6.930527566564796 ns/iter |
1.01 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7141363379452657 ns/iter |
0.6229818076657226 ns/iter |
1.15 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
21.93596428131547 ns/iter |
25.193605837177167 ns/iter |
0.87 |
JSON_String_Fast_Hash/10 |
1.4080182374849055 ns/iter |
1.2450822653102227 ns/iter |
1.13 |
JSON_String_Fast_Hash/100 |
1.417897421184458 ns/iter |
1.245525409807026 ns/iter |
1.14 |
JSON_String_Key_Hash/10 |
1.0887428778676398 ns/iter |
1.2462129432790157 ns/iter |
0.87 |
JSON_String_Key_Hash/100 |
14.76421754869089 ns/iter |
12.450269351238923 ns/iter |
1.19 |
JSON_Object_Defines_Miss_Same_Length |
3.5201000186967764 ns/iter |
3.115186805800066 ns/iter |
1.13 |
JSON_Object_Defines_Miss_Too_Small |
3.5291555340729603 ns/iter |
3.1128376486602716 ns/iter |
1.13 |
JSON_Object_Defines_Miss_Too_Large |
3.872278582625204 ns/iter |
3.5379410860753295 ns/iter |
1.09 |
Regex_Lower_S_Or_Upper_S_Asterisk |
0.7041473676449198 ns/iter |
0.6228533157001229 ns/iter |
1.13 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.0558910437577957 ns/iter |
0.9339809198584719 ns/iter |
1.13 |
Regex_Period_Asterisk |
1.0559108401698896 ns/iter |
0.933278017588092 ns/iter |
1.13 |
Regex_Group_Period_Asterisk_Group |
0.7035511278673507 ns/iter |
0.6226002464375451 ns/iter |
1.13 |
Regex_Period_Plus |
0.7039337954661309 ns/iter |
0.6222707159838072 ns/iter |
1.13 |
Regex_Period |
1.0556507027591782 ns/iter |
0.9353964502432587 ns/iter |
1.13 |
Regex_Caret_Period_Plus_Dollar |
1.0561008897738753 ns/iter |
0.9609406750424787 ns/iter |
1.10 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
0.7038916242282165 ns/iter |
0.6225031251280939 ns/iter |
1.13 |
Regex_Caret_Period_Asterisk_Dollar |
0.7041699783348319 ns/iter |
0.6231798504669969 ns/iter |
1.13 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.0551860554966421 ns/iter |
0.9345804787366091 ns/iter |
1.13 |
Regex_Caret_X_Hyphen |
3.8761319409526442 ns/iter |
4.0783426956193765 ns/iter |
0.95 |
Regex_Period_Md_Dollar |
33.44212803349162 ns/iter |
37.46265216659248 ns/iter |
0.89 |
Regex_Caret_Slash_Period_Asterisk |
4.219575560406588 ns/iter |
4.358363468166496 ns/iter |
0.97 |
Regex_Caret_Period_Range_Dollar |
1.4066322744312587 ns/iter |
1.2451532826894154 ns/iter |
1.13 |
Regex_Nested_Backtrack |
39.59033568070106 ns/iter |
36.399518630819756 ns/iter |
1.09 |
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: 62be144 | Previous: a39f279 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.1778027623702982 ns/iter |
2.478833666128547 ns/iter |
0.88 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.1782987848443707 ns/iter |
2.462883671424388 ns/iter |
0.88 |
Regex_Period_Asterisk |
2.207284979420939 ns/iter |
2.4619846801980136 ns/iter |
0.90 |
Regex_Group_Period_Asterisk_Group |
2.1833324583413085 ns/iter |
2.462158452451159 ns/iter |
0.89 |
Regex_Period_Plus |
2.4882889468850067 ns/iter |
3.5154413834664333 ns/iter |
0.71 |
Regex_Period |
2.4107932023545655 ns/iter |
3.5158967388238507 ns/iter |
0.69 |
Regex_Caret_Period_Plus_Dollar |
2.7877030624506176 ns/iter |
3.869845442041994 ns/iter |
0.72 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.7477097216732616 ns/iter |
3.86999314146304 ns/iter |
0.71 |
Regex_Caret_Period_Asterisk_Dollar |
3.0320914303507056 ns/iter |
2.4621433567118465 ns/iter |
1.23 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
3.1158610848824337 ns/iter |
2.46231840855815 ns/iter |
1.27 |
Regex_Caret_X_Hyphen |
6.645998839528974 ns/iter |
7.033360460691445 ns/iter |
0.94 |
Regex_Period_Md_Dollar |
27.156885829592373 ns/iter |
26.670529750673605 ns/iter |
1.02 |
Regex_Caret_Slash_Period_Asterisk |
5.865433496136993 ns/iter |
7.641783418281991 ns/iter |
0.77 |
Regex_Caret_Period_Range_Dollar |
3.7270375254005024 ns/iter |
2.4645840373235575 ns/iter |
1.51 |
Regex_Nested_Backtrack |
46.564884843117525 ns/iter |
36.99405606320684 ns/iter |
1.26 |
JSON_Array_Of_Objects_Unique |
399.533673256162 ns/iter |
437.1450084929813 ns/iter |
0.91 |
JSON_Parse_1 |
4921.041335009688 ns/iter |
4925.949706575096 ns/iter |
1.00 |
JSON_Parse_Real |
5120.156698078491 ns/iter |
5221.123936347897 ns/iter |
0.98 |
JSON_Parse_Decimal |
9080.29952157077 ns/iter |
7552.826354824859 ns/iter |
1.20 |
JSON_Parse_Schema_ISO_Language |
4106175.014563076 ns/iter |
3633326.494845203 ns/iter |
1.13 |
JSON_Parse_Integer |
3745.1790101027964 ns/iter |
4023.738817433523 ns/iter |
0.93 |
JSON_Parse_String_NonSSO_Plain |
5022.871210001085 ns/iter |
5115.525713703687 ns/iter |
0.98 |
JSON_Parse_String_SSO_Plain |
2727.2608890832075 ns/iter |
2889.0633774355283 ns/iter |
0.94 |
JSON_Parse_String_Escape_Heavy |
14024.215581704852 ns/iter |
14251.958533741468 ns/iter |
0.98 |
JSON_Parse_Object_Short_Keys |
7610.633372162046 ns/iter |
7936.73891625619 ns/iter |
0.96 |
JSON_Parse_Object_Scalar_Properties |
4026.198443602166 ns/iter |
4257.499659273408 ns/iter |
0.95 |
JSON_Parse_Object_Array_Properties |
5828.145193326216 ns/iter |
5662.185081058538 ns/iter |
1.03 |
JSON_Parse_Object_Object_Properties |
5828.888330098709 ns/iter |
5708.650843056441 ns/iter |
1.02 |
JSON_Parse_Nested_Containers |
44458.99357642567 ns/iter |
44810.59915422335 ns/iter |
0.99 |
JSON_From_String_Copy |
19.507529866270417 ns/iter |
21.153907144626658 ns/iter |
0.92 |
JSON_From_String_Temporary |
17.12852856196749 ns/iter |
18.928362965356563 ns/iter |
0.90 |
JSON_Number_To_Double |
23.45037529746626 ns/iter |
22.535435054231957 ns/iter |
1.04 |
JSON_Object_At_Last_Key/8 |
3.462290840783298 ns/iter |
4.715785208581295 ns/iter |
0.73 |
JSON_Object_At_Last_Key/32 |
11.845468732717968 ns/iter |
13.573967664642005 ns/iter |
0.87 |
JSON_Object_At_Last_Key/128 |
48.95275932581523 ns/iter |
47.327956020083654 ns/iter |
1.03 |
JSON_Object_At_Last_Key/512 |
376.8620140500915 ns/iter |
365.4446198066601 ns/iter |
1.03 |
JSON_Fast_Hash_Helm_Chart_Lock |
57.55344874770234 ns/iter |
68.53751297285791 ns/iter |
0.84 |
JSON_Equality_Helm_Chart_Lock |
170.06245964819715 ns/iter |
182.13128783477393 ns/iter |
0.93 |
JSON_Divisible_By_Decimal |
253.69641477116897 ns/iter |
256.3336533531079 ns/iter |
0.99 |
JSON_String_Equal/10 |
7.772651529933246 ns/iter |
6.682586958057047 ns/iter |
1.16 |
JSON_String_Equal/100 |
7.352803168386417 ns/iter |
7.388743840581319 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.9176191046582586 ns/iter |
1.0546038084350455 ns/iter |
0.87 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
10.559327129120124 ns/iter |
12.475355533612095 ns/iter |
0.85 |
JSON_String_Fast_Hash/10 |
2.174380518214496 ns/iter |
2.109502303387894 ns/iter |
1.03 |
JSON_String_Fast_Hash/100 |
2.154391697050014 ns/iter |
2.1117731262676194 ns/iter |
1.02 |
JSON_String_Key_Hash/10 |
2.1471700370259272 ns/iter |
2.461395839600908 ns/iter |
0.87 |
JSON_String_Key_Hash/100 |
6.354457401861398 ns/iter |
8.173923262522438 ns/iter |
0.78 |
JSON_Object_Defines_Miss_Same_Length |
2.62467885434811 ns/iter |
2.9112681507026785 ns/iter |
0.90 |
JSON_Object_Defines_Miss_Too_Small |
2.690347550627968 ns/iter |
2.9505104610153037 ns/iter |
0.91 |
JSON_Object_Defines_Miss_Too_Large |
2.6086875122216653 ns/iter |
2.9388503251994016 ns/iter |
0.89 |
Pointer_Object_Traverse |
23.39324527165274 ns/iter |
25.57305038310568 ns/iter |
0.91 |
Pointer_Object_Try_Traverse |
27.979608998134616 ns/iter |
30.569898114709396 ns/iter |
0.92 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
154.33930899512913 ns/iter |
192.84986337005606 ns/iter |
0.80 |
Pointer_Walker_Schema_ISO_Language |
1641536.4593967225 ns/iter |
1787786.7404580377 ns/iter |
0.92 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1219826.0680628566 ns/iter |
1283734.1062272205 ns/iter |
0.95 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1701319.1031938202 ns/iter |
2063461.1637929974 ns/iter |
0.82 |
Pointer_Position_Tracker_Get_Deeply_Nested |
675.3887402588529 ns/iter |
718.5021441799947 ns/iter |
0.94 |
URITemplateRouter_Create |
30940.36701297571 ns/iter |
30362.934509144576 ns/iter |
1.02 |
URITemplateRouter_Match |
177.63547142540097 ns/iter |
177.98364689939754 ns/iter |
1.00 |
URITemplateRouter_Match_BasePath |
206.53020968135343 ns/iter |
222.2647528203153 ns/iter |
0.93 |
URITemplateRouterView_Restore |
7902.565469909671 ns/iter |
8685.980031948638 ns/iter |
0.91 |
URITemplateRouterView_Match |
164.0745716457062 ns/iter |
170.87746703950418 ns/iter |
0.96 |
URITemplateRouterView_Match_BasePath |
188.77019552981778 ns/iter |
202.0547886144985 ns/iter |
0.93 |
URITemplateRouterView_Arguments |
428.193207576792 ns/iter |
450.287506103351 ns/iter |
0.95 |
JSONL_Parse_Large |
10029555.985715888 ns/iter |
9041686.298701279 ns/iter |
1.11 |
JSONL_Parse_Large_GZIP |
11602755.149999667 ns/iter |
10739633.815385858 ns/iter |
1.08 |
HTML_Build_Table_100000 |
68710690.00001171 ns/iter |
72846439.19999781 ns/iter |
0.94 |
HTML_Render_Table_100000 |
5058921.941605668 ns/iter |
5175078.656716764 ns/iter |
0.98 |
GZIP_Compress_ISO_Language_Set_3_Locations |
32618634.952379063 ns/iter |
35415362.3000002 ns/iter |
0.92 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
3897629.494253093 ns/iter |
4283044.835366437 ns/iter |
0.91 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1880651.9892476194 ns/iter |
2127598.4954406195 ns/iter |
0.88 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
354072.54126582725 ns/iter |
276877.409901002 ns/iter |
1.28 |
JOSE_VerifySignature_RS256 |
58058.90562913384 ns/iter |
63804.95593189496 ns/iter |
0.91 |
JOSE_VerifySignature_ES512 |
2475980.8085102756 ns/iter |
2662052.8707222487 ns/iter |
0.93 |
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: 62be144 | Previous: a39f279 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
5.088732000003802 ns/iter |
5.00654299999951 ns/iter |
1.02 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
5.010805357138842 ns/iter |
4.958966964287421 ns/iter |
1.01 |
Regex_Period_Asterisk |
5.022068999996918 ns/iter |
4.95259553572071 ns/iter |
1.01 |
Regex_Group_Period_Asterisk_Group |
5.015597000001435 ns/iter |
4.953372321429989 ns/iter |
1.01 |
Regex_Period_Plus |
4.784970402854455 ns/iter |
4.599565858480811 ns/iter |
1.04 |
Regex_Period |
4.782226349957929 ns/iter |
4.597655457462644 ns/iter |
1.04 |
Regex_Caret_Period_Plus_Dollar |
4.770849999999882 ns/iter |
4.604079251353382 ns/iter |
1.04 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
4.78518352785365 ns/iter |
4.604678894944593 ns/iter |
1.04 |
Regex_Caret_Period_Asterisk_Dollar |
5.0215750000006665 ns/iter |
4.951364000007743 ns/iter |
1.01 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
5.018918000005215 ns/iter |
4.956235000008746 ns/iter |
1.01 |
Regex_Caret_X_Hyphen |
8.24584375000167 ns/iter |
7.797537946428536 ns/iter |
1.06 |
Regex_Period_Md_Dollar |
44.39445962424017 ns/iter |
57.4667410714775 ns/iter |
0.77 |
Regex_Caret_Slash_Period_Asterisk |
7.842063616071267 ns/iter |
7.429712053570776 ns/iter |
1.06 |
Regex_Caret_Period_Range_Dollar |
5.961572321431114 ns/iter |
5.326689000003171 ns/iter |
1.12 |
Regex_Nested_Backtrack |
53.3776874999603 ns/iter |
67.53055357145448 ns/iter |
0.79 |
JSON_Array_Of_Objects_Unique |
500.7897099974321 ns/iter |
517.6682999999684 ns/iter |
0.97 |
JSON_Parse_1 |
8739.54357346398 ns/iter |
9221.65749260216 ns/iter |
0.95 |
JSON_Parse_Real |
16012.265624993914 ns/iter |
16429.17965968181 ns/iter |
0.97 |
JSON_Parse_Decimal |
11808.623437502774 ns/iter |
11216.732812499686 ns/iter |
1.05 |
JSON_Parse_Schema_ISO_Language |
7741226.666672042 ns/iter |
7602439.999997538 ns/iter |
1.02 |
JSON_Parse_Integer |
6111.196428564978 ns/iter |
5931.86964286068 ns/iter |
1.03 |
JSON_Parse_String_NonSSO_Plain |
8418.030133928563 ns/iter |
7829.681919641222 ns/iter |
1.08 |
JSON_Parse_String_SSO_Plain |
3717.424611741103 ns/iter |
3635.443544868003 ns/iter |
1.02 |
JSON_Parse_String_Escape_Heavy |
22377.646874986112 ns/iter |
21305.823805947894 ns/iter |
1.05 |
JSON_Parse_Object_Short_Keys |
13172.907710235144 ns/iter |
13105.22118204024 ns/iter |
1.01 |
JSON_Parse_Object_Scalar_Properties |
6767.22656250612 ns/iter |
6795.920758934569 ns/iter |
1.00 |
JSON_Parse_Object_Array_Properties |
11282.433928564777 ns/iter |
11534.682142853724 ns/iter |
0.98 |
JSON_Parse_Object_Object_Properties |
11496.690624994699 ns/iter |
11686.253571432255 ns/iter |
0.98 |
JSON_Parse_Nested_Containers |
78551.04910723704 ns/iter |
82877.91294644566 ns/iter |
0.95 |
JSON_From_String_Copy |
64.14496428573914 ns/iter |
63.377812500026 ns/iter |
1.01 |
JSON_From_String_Temporary |
57.93715178575504 ns/iter |
84.8427343750505 ns/iter |
0.68 |
JSON_Number_To_Double |
118.8341785715303 ns/iter |
137.5170357143166 ns/iter |
0.86 |
JSON_Object_At_Last_Key/8 |
7.234021205348995 ns/iter |
7.547902901785212 ns/iter |
0.96 |
JSON_Object_At_Last_Key/32 |
23.28998076684127 ns/iter |
24.933835714266802 ns/iter |
0.93 |
JSON_Object_At_Last_Key/128 |
89.38333529544282 ns/iter |
95.20041539287654 ns/iter |
0.94 |
JSON_Object_At_Last_Key/512 |
417.7329277795816 ns/iter |
429.067613917052 ns/iter |
0.97 |
JSON_Fast_Hash_Helm_Chart_Lock |
65.73168749996837 ns/iter |
71.4770758928499 ns/iter |
0.92 |
JSON_Equality_Helm_Chart_Lock |
299.65384378868106 ns/iter |
282.1742150816643 ns/iter |
1.06 |
JSON_Divisible_By_Decimal |
300.2865937371227 ns/iter |
367.40499242783255 ns/iter |
0.82 |
JSON_String_Equal/10 |
15.097126271888873 ns/iter |
14.180114668835534 ns/iter |
1.06 |
JSON_String_Equal/100 |
16.321785714288648 ns/iter |
16.135548775872884 ns/iter |
1.01 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
2.5121407142868133 ns/iter |
2.1231253124994964 ns/iter |
1.18 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
14.189176945593768 ns/iter |
15.556743303579065 ns/iter |
0.91 |
JSON_String_Fast_Hash/10 |
4.700179697995164 ns/iter |
4.615087510301039 ns/iter |
1.02 |
JSON_String_Fast_Hash/100 |
4.707234385505662 ns/iter |
4.742873448084076 ns/iter |
0.99 |
JSON_String_Key_Hash/10 |
5.3459620000012364 ns/iter |
4.957390178576913 ns/iter |
1.08 |
JSON_String_Key_Hash/100 |
11.874837499996309 ns/iter |
10.954956250003534 ns/iter |
1.08 |
JSON_Object_Defines_Miss_Same_Length |
4.0952659803180556 ns/iter |
3.938032366071249 ns/iter |
1.04 |
JSON_Object_Defines_Miss_Too_Small |
5.021495535718908 ns/iter |
5.03443800000241 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Large |
4.400803125002994 ns/iter |
4.409742453386326 ns/iter |
1.00 |
Pointer_Object_Traverse |
70.04121651793379 ns/iter |
69.708741071476 ns/iter |
1.00 |
Pointer_Object_Try_Traverse |
71.02083035712374 ns/iter |
68.28747999998086 ns/iter |
1.04 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
182.9834899317702 ns/iter |
159.3019642858248 ns/iter |
1.15 |
Pointer_Walker_Schema_ISO_Language |
8530450.000004444 ns/iter |
8554427.77777474 ns/iter |
1.00 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
2402130.3030325947 ns/iter |
2406493.2142859367 ns/iter |
1.00 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
3690131.5508005996 ns/iter |
3646500.000001815 ns/iter |
1.01 |
Pointer_Position_Tracker_Get_Deeply_Nested |
535.240267857619 ns/iter |
560.4083475146632 ns/iter |
0.96 |
URITemplateRouter_Create |
41644.27168084295 ns/iter |
40128.2107828695 ns/iter |
1.04 |
URITemplateRouter_Match |
233.10513023389478 ns/iter |
223.26727418900217 ns/iter |
1.04 |
URITemplateRouter_Match_BasePath |
264.3569180514762 ns/iter |
248.95314285718734 ns/iter |
1.06 |
URITemplateRouterView_Restore |
30871.49107143107 ns/iter |
24288.91785715288 ns/iter |
1.27 |
URITemplateRouterView_Match |
179.02796241314445 ns/iter |
173.27930401402935 ns/iter |
1.03 |
URITemplateRouterView_Match_BasePath |
204.265843749738 ns/iter |
197.11357117084063 ns/iter |
1.04 |
URITemplateRouterView_Arguments |
531.1518750001402 ns/iter |
589.1806249995365 ns/iter |
0.90 |
JSONL_Parse_Large |
32712071.428553216 ns/iter |
32555347.61904398 ns/iter |
1.00 |
JSONL_Parse_Large_GZIP |
33389733.33332736 ns/iter |
33093252.38093325 ns/iter |
1.01 |
HTML_Build_Table_100000 |
87373185.71417876 ns/iter |
91795271.42857425 ns/iter |
0.95 |
HTML_Render_Table_100000 |
7143644.642854139 ns/iter |
8622276.666675236 ns/iter |
0.83 |
GZIP_Compress_ISO_Language_Set_3_Locations |
36401257.894747116 ns/iter |
37739668.42106204 ns/iter |
0.96 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
9426357.33333494 ns/iter |
10597396.874999277 ns/iter |
0.89 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2127572.4637682973 ns/iter |
2278156.8749991264 ns/iter |
0.93 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
607893.3035715701 ns/iter |
596128.3928570538 ns/iter |
1.02 |
JOSE_VerifySignature_RS256 |
21214.357843436163 ns/iter |
23695.279070536744 ns/iter |
0.90 |
JOSE_VerifySignature_ES512 |
1544365.848214316 ns/iter |
1524053.7946437728 ns/iter |
1.01 |
This comment was automatically generated by workflow using github-action-benchmark.
Signed-off-by: Juan Cruz Viotti jv@jviotti.com