Add more coverage-guided unit testing - #2712
Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
🤖 Augment PR SummarySummary: This PR broadens coverage-guided unit testing across several Core components. Changes:
Technical Notes: The changes are test-only and target boundary conditions, collision fallback paths, and error handling without altering production behavior. 🤖 Was this summary useful? React with 👍 or 👎 |
There was a problem hiding this comment.
Benchmark (macos/llvm)
Details
| Benchmark suite | Current: d5aacc9 | Previous: ac69efc | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
1.8732351714135869 ns/iter |
1.9319824512012742 ns/iter |
0.97 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.7868181212849956 ns/iter |
2.4316311617518935 ns/iter |
0.73 |
Regex_Period_Asterisk |
1.963408524458078 ns/iter |
2.0237645307114605 ns/iter |
0.97 |
Regex_Group_Period_Asterisk_Group |
1.9778886709103327 ns/iter |
1.781961334882922 ns/iter |
1.11 |
Regex_Period_Plus |
2.4556849118647692 ns/iter |
2.1107062399768264 ns/iter |
1.16 |
Regex_Period |
2.6090253428058143 ns/iter |
2.2264764514210964 ns/iter |
1.17 |
Regex_Caret_Period_Plus_Dollar |
4.365511086701899 ns/iter |
1.9907778952209136 ns/iter |
2.19 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.374174278788224 ns/iter |
2.05933142824342 ns/iter |
1.15 |
Regex_Caret_Period_Asterisk_Dollar |
2.2457268242917534 ns/iter |
1.7542490862694577 ns/iter |
1.28 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.45649063616226 ns/iter |
1.6447554735146972 ns/iter |
1.49 |
Regex_Caret_X_Hyphen |
7.561795262964361 ns/iter |
6.145928766723236 ns/iter |
1.23 |
Regex_Period_Md_Dollar |
20.661385961908657 ns/iter |
20.93998122675405 ns/iter |
0.99 |
Regex_Caret_Slash_Period_Asterisk |
6.546076629074701 ns/iter |
5.173814502740063 ns/iter |
1.27 |
Regex_Caret_Period_Range_Dollar |
3.107799458535729 ns/iter |
2.1345569325679996 ns/iter |
1.46 |
Regex_Nested_Backtrack |
38.261246427712045 ns/iter |
32.40043635270529 ns/iter |
1.18 |
JSON_Array_Of_Objects_Unique |
491.18787461322876 ns/iter |
361.29816585833055 ns/iter |
1.36 |
JSON_Parse_1 |
9028.425860767884 ns/iter |
6648.513864046408 ns/iter |
1.36 |
JSON_Parse_Real |
8326.330107343561 ns/iter |
6428.644547044849 ns/iter |
1.30 |
JSON_Parse_Decimal |
9623.632731736418 ns/iter |
7380.794148500506 ns/iter |
1.30 |
JSON_Parse_Schema_ISO_Language |
5617905.109677175 ns/iter |
3760016.756613459 ns/iter |
1.49 |
JSON_Parse_Integer |
6327.952157845944 ns/iter |
4707.969875409053 ns/iter |
1.34 |
JSON_Parse_String_NonSSO_Plain |
9907.206496430019 ns/iter |
7348.403591613214 ns/iter |
1.35 |
JSON_Parse_String_SSO_Plain |
3299.997047273196 ns/iter |
3000.8322806936526 ns/iter |
1.10 |
JSON_Parse_String_Escape_Heavy |
26439.74157929773 ns/iter |
21769.366050596895 ns/iter |
1.21 |
JSON_Parse_Object_Short_Keys |
10629.946671024938 ns/iter |
9399.143527290169 ns/iter |
1.13 |
JSON_Parse_Object_Scalar_Properties |
7307.694491007597 ns/iter |
5332.737841733575 ns/iter |
1.37 |
JSON_Parse_Object_Array_Properties |
9669.383120615345 ns/iter |
9194.370323164629 ns/iter |
1.05 |
JSON_Parse_Object_Object_Properties |
12191.741040127261 ns/iter |
11096.013437240728 ns/iter |
1.10 |
JSON_Parse_Nested_Containers |
81352.99116867916 ns/iter |
114639.46950373563 ns/iter |
0.71 |
JSON_From_String_Copy |
27.362685393247734 ns/iter |
29.497130981019705 ns/iter |
0.93 |
JSON_From_String_Temporary |
22.142755761731678 ns/iter |
23.07380108736044 ns/iter |
0.96 |
JSON_Number_To_Double |
33.745246019868254 ns/iter |
33.61374282324192 ns/iter |
1.00 |
JSON_Object_At_Last_Key/8 |
4.38100886276137 ns/iter |
4.371316863798635 ns/iter |
1.00 |
JSON_Object_At_Last_Key/32 |
14.160845457376068 ns/iter |
12.338011810491876 ns/iter |
1.15 |
JSON_Object_At_Last_Key/128 |
54.91958128914825 ns/iter |
63.20037933457424 ns/iter |
0.87 |
JSON_Object_At_Last_Key/512 |
190.70138623363684 ns/iter |
210.8066562242855 ns/iter |
0.90 |
JSON_Fast_Hash_Helm_Chart_Lock |
59.450639937355795 ns/iter |
62.60870982839247 ns/iter |
0.95 |
JSON_Equality_Helm_Chart_Lock |
136.89105102059023 ns/iter |
131.42069304563654 ns/iter |
1.04 |
JSON_Divisible_By_Decimal |
175.25718033610588 ns/iter |
170.66951107532265 ns/iter |
1.03 |
JSON_String_Equal/10 |
6.899031315416597 ns/iter |
6.745408478355866 ns/iter |
1.02 |
JSON_String_Equal/100 |
6.538369750673391 ns/iter |
7.001480680578671 ns/iter |
0.93 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.34768214326181796 ns/iter |
0.31604651012551355 ns/iter |
1.10 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
3.2521296384940674 ns/iter |
3.4152597845320454 ns/iter |
0.95 |
JSON_String_Fast_Hash/10 |
2.4494137285608715 ns/iter |
2.282999020200698 ns/iter |
1.07 |
JSON_String_Fast_Hash/100 |
2.0832634379146944 ns/iter |
1.9155915082435884 ns/iter |
1.09 |
JSON_String_Key_Hash/10 |
1.835082890278233 ns/iter |
1.6381056071186342 ns/iter |
1.12 |
JSON_String_Key_Hash/100 |
2.3431522855048033 ns/iter |
1.9310855540175536 ns/iter |
1.21 |
JSON_Object_Defines_Miss_Same_Length |
2.7565864228596006 ns/iter |
2.5900879549885176 ns/iter |
1.06 |
JSON_Object_Defines_Miss_Too_Small |
2.758419816665605 ns/iter |
2.836536492131048 ns/iter |
0.97 |
JSON_Object_Defines_Miss_Too_Large |
2.891203405708339 ns/iter |
3.951782562567113 ns/iter |
0.73 |
Pointer_Object_Traverse |
24.145967950533933 ns/iter |
25.26460105691236 ns/iter |
0.96 |
Pointer_Object_Try_Traverse |
22.74605805989441 ns/iter |
29.68388195221267 ns/iter |
0.77 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
163.3374708601597 ns/iter |
171.65365041234793 ns/iter |
0.95 |
Pointer_Walker_Schema_ISO_Language |
2719550.799999892 ns/iter |
2902460.5739910603 ns/iter |
0.94 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1223512.4643478666 ns/iter |
1283400.2450981466 ns/iter |
0.95 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1049739.9488817805 ns/iter |
1051882.437598695 ns/iter |
1.00 |
Pointer_Position_Tracker_Get_Deeply_Nested |
344.4925947176221 ns/iter |
326.554337753021 ns/iter |
1.05 |
JSONPath_Descendant_Filter_Nested |
1481.703523719615 ns/iter |
1317.0278901193385 ns/iter |
1.13 |
URITemplateRouter_Create |
23939.384222532433 ns/iter |
26099.17716660906 ns/iter |
0.92 |
URITemplateRouter_Match |
172.27194146526872 ns/iter |
175.09739049345885 ns/iter |
0.98 |
URITemplateRouter_Match_BasePath |
202.44478650041367 ns/iter |
208.49005216081096 ns/iter |
0.97 |
URITemplateRouterView_Restore |
10386.711912179899 ns/iter |
10326.455725880083 ns/iter |
1.01 |
URITemplateRouterView_Match |
136.43234879603554 ns/iter |
127.18625811265656 ns/iter |
1.07 |
URITemplateRouterView_Match_BasePath |
155.65863810178877 ns/iter |
157.2666207324066 ns/iter |
0.99 |
URITemplateRouterView_Arguments |
584.8277117896695 ns/iter |
653.2916658946205 ns/iter |
0.90 |
JSONL_Parse_Large |
10823288.46153954 ns/iter |
10706894.575757056 ns/iter |
1.01 |
JSONL_Parse_Large_GZIP |
11931099.576272419 ns/iter |
13641120.283019295 ns/iter |
0.87 |
JSONLD_Catalog_Annotation_List_Populate |
1158929.7295692305 ns/iter |
996246.5479653013 ns/iter |
1.16 |
JSONLD_Catalog_Materialize |
6879131.688679252 ns/iter |
4740479.538921539 ns/iter |
1.45 |
HTML_Build_Table_100000 |
83147378.50000142 ns/iter |
43139505.25001076 ns/iter |
1.93 |
HTML_Render_Table_100000 |
2848241.848580306 ns/iter |
2013417.3690141172 ns/iter |
1.41 |
GZIP_Compress_ISO_Language_Set_3_Locations |
35927754.149997786 ns/iter |
25015504.807697654 ns/iter |
1.44 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
3874850.0416669883 ns/iter |
3040315.3187776553 ns/iter |
1.27 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1842724.4864198407 ns/iter |
1693640.5930471048 ns/iter |
1.09 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
278382.86711526266 ns/iter |
342240.41387563956 ns/iter |
0.81 |
JOSE_VerifySignature_RS256 |
26359.18536924825 ns/iter |
24866.375517468634 ns/iter |
1.06 |
JOSE_VerifySignature_ES512 |
1147093.9741749805 ns/iter |
915874.8361730417 ns/iter |
1.25 |
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: d5aacc9 | Previous: ac69efc | Ratio |
|---|---|---|---|
JOSE_VerifySignature_RS256 |
22398.393086453165 ns/iter |
24696.61104636484 ns/iter |
0.91 |
JOSE_VerifySignature_ES512 |
576771.2772277496 ns/iter |
641376.9386446365 ns/iter |
0.90 |
GZIP_Compress_ISO_Language_Set_3_Locations |
36566037.15789611 ns/iter |
39352684.277774744 ns/iter |
0.93 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4491571.365384481 ns/iter |
4066567.2034881325 ns/iter |
1.10 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2062989.3429395321 ns/iter |
2279804.03583084 ns/iter |
0.90 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
377337.5647948527 ns/iter |
277646.2996330648 ns/iter |
1.36 |
HTML_Build_Table_100000 |
63868701.27272976 ns/iter |
70046903.49999692 ns/iter |
0.91 |
HTML_Render_Table_100000 |
2036690.5483874062 ns/iter |
2154035.1107691657 ns/iter |
0.95 |
JSONLD_Catalog_Annotation_List_Populate |
1492092.479657101 ns/iter |
1531967.7124183476 ns/iter |
0.97 |
JSONLD_Catalog_Materialize |
8139788.024097021 ns/iter |
7116495.939393497 ns/iter |
1.14 |
JSONL_Parse_Large |
14121364.03999739 ns/iter |
13539677.519230071 ns/iter |
1.04 |
JSONL_Parse_Large_GZIP |
15405242.755554758 ns/iter |
15018942.191490013 ns/iter |
1.03 |
URITemplateRouter_Create |
31695.282852492135 ns/iter |
30967.67194332614 ns/iter |
1.02 |
URITemplateRouter_Match |
150.58540677968364 ns/iter |
151.06027847142653 ns/iter |
1.00 |
URITemplateRouter_Match_BasePath |
174.30792734816646 ns/iter |
179.17068160946795 ns/iter |
0.97 |
URITemplateRouterView_Restore |
8735.201928476285 ns/iter |
9877.534636440756 ns/iter |
0.88 |
URITemplateRouterView_Match |
127.56195201183044 ns/iter |
124.49670468235361 ns/iter |
1.02 |
URITemplateRouterView_Match_BasePath |
148.7442837367138 ns/iter |
142.911414419242 ns/iter |
1.04 |
URITemplateRouterView_Arguments |
476.5906555795812 ns/iter |
466.1601974500295 ns/iter |
1.02 |
JSONPath_Descendant_Filter_Nested |
1707.6831806759471 ns/iter |
1812.7582603693845 ns/iter |
0.94 |
Pointer_Object_Traverse |
30.735161247396046 ns/iter |
32.827016938752266 ns/iter |
0.94 |
Pointer_Object_Try_Traverse |
25.84086633615848 ns/iter |
25.795882042869042 ns/iter |
1.00 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
158.30991165609282 ns/iter |
153.32441697703362 ns/iter |
1.03 |
Pointer_Walker_Schema_ISO_Language |
2989642.2796601825 ns/iter |
2624106.2296296353 ns/iter |
1.14 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1872642.0510749635 ns/iter |
1909247.6775956098 ns/iter |
0.98 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1740614.8387097516 ns/iter |
1646072.995282995 ns/iter |
1.06 |
Pointer_Position_Tracker_Get_Deeply_Nested |
374.784552581271 ns/iter |
425.40815927503263 ns/iter |
0.88 |
JSON_Array_Of_Objects_Unique |
423.90495588749377 ns/iter |
392.76872600668725 ns/iter |
1.08 |
JSON_Parse_1 |
9972.895644993665 ns/iter |
9807.993895726177 ns/iter |
1.02 |
JSON_Parse_Real |
7936.301039680639 ns/iter |
7850.997991133714 ns/iter |
1.01 |
JSON_Parse_Decimal |
12972.812153475801 ns/iter |
11253.162212943389 ns/iter |
1.15 |
JSON_Parse_Schema_ISO_Language |
6785936.913460616 ns/iter |
6720940.230769439 ns/iter |
1.01 |
JSON_Parse_Integer |
5708.9315110478365 ns/iter |
5648.068752768884 ns/iter |
1.01 |
JSON_Parse_String_NonSSO_Plain |
12153.555507274386 ns/iter |
12494.770587189534 ns/iter |
0.97 |
JSON_Parse_String_SSO_Plain |
5041.098511678699 ns/iter |
4849.269053367091 ns/iter |
1.04 |
JSON_Parse_String_Escape_Heavy |
25820.62407871982 ns/iter |
24436.22826431558 ns/iter |
1.06 |
JSON_Parse_Object_Short_Keys |
13972.393177446795 ns/iter |
14600.863820884411 ns/iter |
0.96 |
JSON_Parse_Object_Scalar_Properties |
7114.045607866731 ns/iter |
7328.793863140556 ns/iter |
0.97 |
JSON_Parse_Object_Array_Properties |
12759.097981824127 ns/iter |
13453.257961110221 ns/iter |
0.95 |
JSON_Parse_Object_Object_Properties |
12508.395401109325 ns/iter |
12586.391056308777 ns/iter |
0.99 |
JSON_Parse_Nested_Containers |
102619.0596971007 ns/iter |
102504.792749164 ns/iter |
1.00 |
JSON_From_String_Copy |
17.769125769602617 ns/iter |
20.254887761732277 ns/iter |
0.88 |
JSON_From_String_Temporary |
15.036050214639365 ns/iter |
16.71111977174088 ns/iter |
0.90 |
JSON_Number_To_Double |
20.89863546673438 ns/iter |
19.708141965899927 ns/iter |
1.06 |
JSON_Object_At_Last_Key/8 |
5.613444783263381 ns/iter |
6.500671756106598 ns/iter |
0.86 |
JSON_Object_At_Last_Key/32 |
21.74266243141387 ns/iter |
23.929192856319226 ns/iter |
0.91 |
JSON_Object_At_Last_Key/128 |
87.80503443208066 ns/iter |
91.59108003417572 ns/iter |
0.96 |
JSON_Object_At_Last_Key/512 |
399.8618054836715 ns/iter |
378.94401864261346 ns/iter |
1.06 |
JSON_Fast_Hash_Helm_Chart_Lock |
61.338108186888476 ns/iter |
70.74494326476322 ns/iter |
0.87 |
JSON_Equality_Helm_Chart_Lock |
163.36873818097806 ns/iter |
167.05300452121767 ns/iter |
0.98 |
JSON_Divisible_By_Decimal |
259.65718046243563 ns/iter |
249.6555160609577 ns/iter |
1.04 |
JSON_String_Equal/10 |
5.420742550081163 ns/iter |
5.407984671391889 ns/iter |
1.00 |
JSON_String_Equal/100 |
6.043717891649458 ns/iter |
6.11179011836551 ns/iter |
0.99 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7433370711841835 ns/iter |
0.7119990519050721 ns/iter |
1.04 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
25.20233900892218 ns/iter |
21.988058585194427 ns/iter |
1.15 |
JSON_String_Fast_Hash/10 |
2.3080168562863217 ns/iter |
2.4626353112480506 ns/iter |
0.94 |
JSON_String_Fast_Hash/100 |
2.3011931049207255 ns/iter |
2.461849608543217 ns/iter |
0.93 |
JSON_String_Key_Hash/10 |
1.2476197318875952 ns/iter |
1.084360621305199 ns/iter |
1.15 |
JSON_String_Key_Hash/100 |
12.452494174280183 ns/iter |
14.75567883864625 ns/iter |
0.84 |
JSON_Object_Defines_Miss_Same_Length |
2.805004573698382 ns/iter |
3.166956809310587 ns/iter |
0.89 |
JSON_Object_Defines_Miss_Too_Small |
3.4362791394503143 ns/iter |
3.9346859201480244 ns/iter |
0.87 |
JSON_Object_Defines_Miss_Too_Large |
3.1768816415587016 ns/iter |
3.1656353395304873 ns/iter |
1.00 |
Regex_Lower_S_Or_Upper_S_Asterisk |
0.6230541451896994 ns/iter |
0.7036673736945736 ns/iter |
0.89 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
0.6246436674780715 ns/iter |
0.7036034806119402 ns/iter |
0.89 |
Regex_Period_Asterisk |
0.624951465105686 ns/iter |
0.7057046970552815 ns/iter |
0.89 |
Regex_Group_Period_Asterisk_Group |
0.627438981401482 ns/iter |
0.704353219128667 ns/iter |
0.89 |
Regex_Period_Plus |
0.6228824306914581 ns/iter |
0.7038728202949256 ns/iter |
0.88 |
Regex_Period |
0.6226778601000339 ns/iter |
0.7041680838691148 ns/iter |
0.88 |
Regex_Caret_Period_Plus_Dollar |
0.6228143554520055 ns/iter |
0.7033185662074611 ns/iter |
0.89 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
0.622645752049886 ns/iter |
0.7041352242662133 ns/iter |
0.88 |
Regex_Caret_Period_Asterisk_Dollar |
0.6229844435917632 ns/iter |
0.7037498749187221 ns/iter |
0.89 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
0.6231812358721531 ns/iter |
0.7037855388149447 ns/iter |
0.89 |
Regex_Caret_X_Hyphen |
3.772043044146197 ns/iter |
3.5215748931547153 ns/iter |
1.07 |
Regex_Period_Md_Dollar |
31.864341795276225 ns/iter |
33.25599801491964 ns/iter |
0.96 |
Regex_Caret_Slash_Period_Asterisk |
4.045573983438017 ns/iter |
3.8667233256638855 ns/iter |
1.05 |
Regex_Caret_Period_Range_Dollar |
1.2452720554807644 ns/iter |
1.407119532428959 ns/iter |
0.88 |
Regex_Nested_Backtrack |
39.05355893545709 ns/iter |
42.51820263351426 ns/iter |
0.92 |
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: d5aacc9 | Previous: ac69efc | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.5043060068667096 ns/iter |
2.2071316851919742 ns/iter |
1.13 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.8050870676340907 ns/iter |
2.5873106824221166 ns/iter |
1.08 |
Regex_Period_Asterisk |
2.8069972697400427 ns/iter |
2.479092937472954 ns/iter |
1.13 |
Regex_Group_Period_Asterisk_Group |
2.492679177850858 ns/iter |
2.186023878780921 ns/iter |
1.14 |
Regex_Period_Plus |
2.978662332919715 ns/iter |
2.373184541479423 ns/iter |
1.26 |
Regex_Period |
3.1134158024103815 ns/iter |
2.926074398916947 ns/iter |
1.06 |
Regex_Caret_Period_Plus_Dollar |
3.1302502673304478 ns/iter |
2.8797213165539977 ns/iter |
1.09 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.803577608721405 ns/iter |
2.528556559766731 ns/iter |
1.11 |
Regex_Caret_Period_Asterisk_Dollar |
2.4945657396910628 ns/iter |
2.134290980032065 ns/iter |
1.17 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.8038759469896792 ns/iter |
2.5754429053825114 ns/iter |
1.09 |
Regex_Caret_X_Hyphen |
6.5467012764764645 ns/iter |
5.182907056453167 ns/iter |
1.26 |
Regex_Period_Md_Dollar |
27.57723144136717 ns/iter |
21.6589743203711 ns/iter |
1.27 |
Regex_Caret_Slash_Period_Asterisk |
6.373177221834186 ns/iter |
4.900696411205657 ns/iter |
1.30 |
Regex_Caret_Period_Range_Dollar |
4.095729915131501 ns/iter |
3.2828211809630017 ns/iter |
1.25 |
Regex_Nested_Backtrack |
47.12519963755714 ns/iter |
33.513187261133986 ns/iter |
1.41 |
JSON_Array_Of_Objects_Unique |
434.03292668391686 ns/iter |
411.3072007949407 ns/iter |
1.06 |
JSON_Parse_1 |
4847.202416958852 ns/iter |
4544.493836141416 ns/iter |
1.07 |
JSON_Parse_Real |
5408.142647466265 ns/iter |
4970.275873065492 ns/iter |
1.09 |
JSON_Parse_Decimal |
8437.589796115453 ns/iter |
7717.5763412928 ns/iter |
1.09 |
JSON_Parse_Schema_ISO_Language |
3549533.654822788 ns/iter |
3085918.704846035 ns/iter |
1.15 |
JSON_Parse_Integer |
3954.0560588862118 ns/iter |
3654.3579657909304 ns/iter |
1.08 |
JSON_Parse_String_NonSSO_Plain |
5124.049723514946 ns/iter |
4411.596989566703 ns/iter |
1.16 |
JSON_Parse_String_SSO_Plain |
2832.1751894286417 ns/iter |
2375.627960243959 ns/iter |
1.19 |
JSON_Parse_String_Escape_Heavy |
14511.445766896046 ns/iter |
13627.931357496504 ns/iter |
1.06 |
JSON_Parse_Object_Short_Keys |
7688.330259823661 ns/iter |
7094.001008196263 ns/iter |
1.08 |
JSON_Parse_Object_Scalar_Properties |
3958.311709560127 ns/iter |
3659.6684050159 ns/iter |
1.08 |
JSON_Parse_Object_Array_Properties |
5399.452750974587 ns/iter |
4990.547663884866 ns/iter |
1.08 |
JSON_Parse_Object_Object_Properties |
5437.751742166509 ns/iter |
4963.660785567732 ns/iter |
1.10 |
JSON_Parse_Nested_Containers |
45372.99248850997 ns/iter |
41194.28027538769 ns/iter |
1.10 |
JSON_From_String_Copy |
20.252139821815323 ns/iter |
17.809129275587452 ns/iter |
1.14 |
JSON_From_String_Temporary |
17.472890197588946 ns/iter |
16.035855855345122 ns/iter |
1.09 |
JSON_Number_To_Double |
23.69865863529928 ns/iter |
25.940780457123196 ns/iter |
0.91 |
JSON_Object_At_Last_Key/8 |
3.95529175814176 ns/iter |
4.033217137579679 ns/iter |
0.98 |
JSON_Object_At_Last_Key/32 |
12.299649675456118 ns/iter |
13.28738264363912 ns/iter |
0.93 |
JSON_Object_At_Last_Key/128 |
48.610430162102965 ns/iter |
50.656020882437595 ns/iter |
0.96 |
JSON_Object_At_Last_Key/512 |
399.70481912230787 ns/iter |
211.75327514208936 ns/iter |
1.89 |
JSON_Fast_Hash_Helm_Chart_Lock |
60.17187473065154 ns/iter |
60.526847488823854 ns/iter |
0.99 |
JSON_Equality_Helm_Chart_Lock |
170.99985157787782 ns/iter |
161.04039800436436 ns/iter |
1.06 |
JSON_Divisible_By_Decimal |
247.81791340430212 ns/iter |
233.97738615086092 ns/iter |
1.06 |
JSON_String_Equal/10 |
5.925205154020483 ns/iter |
5.004525693785701 ns/iter |
1.18 |
JSON_String_Equal/100 |
6.548788806895206 ns/iter |
7.079723450798272 ns/iter |
0.93 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.9393073322659656 ns/iter |
0.6733229700396351 ns/iter |
1.40 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
10.687275284664445 ns/iter |
9.813056605986462 ns/iter |
1.09 |
JSON_String_Fast_Hash/10 |
2.8050916040238527 ns/iter |
2.605177099611431 ns/iter |
1.08 |
JSON_String_Fast_Hash/100 |
2.804334751727303 ns/iter |
2.6174402241567196 ns/iter |
1.07 |
JSON_String_Key_Hash/10 |
2.18268715742471 ns/iter |
1.9503569920380144 ns/iter |
1.12 |
JSON_String_Key_Hash/100 |
6.5395133721438405 ns/iter |
6.886717524267176 ns/iter |
0.95 |
JSON_Object_Defines_Miss_Same_Length |
3.143650827378206 ns/iter |
4.025681378936766 ns/iter |
0.78 |
JSON_Object_Defines_Miss_Too_Small |
3.445015445143482 ns/iter |
4.649462957595356 ns/iter |
0.74 |
JSON_Object_Defines_Miss_Too_Large |
2.7618126188049827 ns/iter |
4.262469698558803 ns/iter |
0.65 |
Pointer_Object_Traverse |
28.543711684399128 ns/iter |
22.700485561946735 ns/iter |
1.26 |
Pointer_Object_Try_Traverse |
31.245137851869476 ns/iter |
27.447660693982467 ns/iter |
1.14 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
151.6337546088723 ns/iter |
145.35024069499332 ns/iter |
1.04 |
Pointer_Walker_Schema_ISO_Language |
2625090.0297400155 ns/iter |
2960185.508474512 ns/iter |
0.89 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1202230.8693376672 ns/iter |
1115062.0270271157 ns/iter |
1.08 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1589500.2318183577 ns/iter |
1448042.0724639508 ns/iter |
1.10 |
Pointer_Position_Tracker_Get_Deeply_Nested |
678.6350568092544 ns/iter |
718.181882069259 ns/iter |
0.94 |
JSONPath_Descendant_Filter_Nested |
1557.2091116274505 ns/iter |
1250.5505298840992 ns/iter |
1.25 |
URITemplateRouter_Create |
31814.970248307123 ns/iter |
27646.775453826984 ns/iter |
1.15 |
URITemplateRouter_Match |
183.75543294170333 ns/iter |
175.77191941356634 ns/iter |
1.05 |
URITemplateRouter_Match_BasePath |
209.57503337071097 ns/iter |
196.29656271167286 ns/iter |
1.07 |
URITemplateRouterView_Restore |
8568.399544034575 ns/iter |
3507.760056192182 ns/iter |
2.44 |
URITemplateRouterView_Match |
161.88922197819878 ns/iter |
156.24799130531122 ns/iter |
1.04 |
URITemplateRouterView_Match_BasePath |
191.8399600598458 ns/iter |
176.83010871386506 ns/iter |
1.08 |
URITemplateRouterView_Arguments |
436.8248362542635 ns/iter |
440.47411477886317 ns/iter |
0.99 |
JSONL_Parse_Large |
9711818.66666863 ns/iter |
8683081.72839618 ns/iter |
1.12 |
JSONL_Parse_Large_GZIP |
11363716.580644317 ns/iter |
10160073.420289943 ns/iter |
1.12 |
JSONLD_Catalog_Annotation_List_Populate |
1331405.7101728038 ns/iter |
1173127.4874372315 ns/iter |
1.13 |
JSONLD_Catalog_Materialize |
4515632.625806311 ns/iter |
3962631.175141148 ns/iter |
1.14 |
HTML_Build_Table_100000 |
64249556.63636535 ns/iter |
67136809.29999556 ns/iter |
0.96 |
HTML_Render_Table_100000 |
5396961.834586685 ns/iter |
6660890.510417516 ns/iter |
0.81 |
GZIP_Compress_ISO_Language_Set_3_Locations |
32759786.952380765 ns/iter |
27920479.9199988 ns/iter |
1.17 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4319901.925925849 ns/iter |
3790624.4254144095 ns/iter |
1.14 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1861928.6675528472 ns/iter |
1826817.187499922 ns/iter |
1.02 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
356762.3436705188 ns/iter |
330476.8768425789 ns/iter |
1.08 |
JOSE_VerifySignature_RS256 |
58339.37895175391 ns/iter |
47595.035833276546 ns/iter |
1.23 |
JOSE_VerifySignature_ES512 |
2429684.461806087 ns/iter |
2092528.0865670703 ns/iter |
1.16 |
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: d5aacc9 | Previous: ac69efc | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
5.410667000001012 ns/iter |
5.386911999999028 ns/iter |
1.00 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
5.257263999999395 ns/iter |
5.025010000001657 ns/iter |
1.05 |
Regex_Period_Asterisk |
5.032792999998037 ns/iter |
5.048274999999194 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
5.1302160000000185 ns/iter |
5.049510999999711 ns/iter |
1.02 |
Regex_Period_Plus |
4.808473661787303 ns/iter |
4.8613487287644945 ns/iter |
0.99 |
Regex_Period |
5.092164285715382 ns/iter |
5.1108133928567305 ns/iter |
1.00 |
Regex_Caret_Period_Plus_Dollar |
4.99835446428725 ns/iter |
4.87529457698114 ns/iter |
1.03 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
5.0996859999986555 ns/iter |
5.103683928571253 ns/iter |
1.00 |
Regex_Caret_Period_Asterisk_Dollar |
5.3341629999999896 ns/iter |
5.374636000001373 ns/iter |
0.99 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
5.108298000000104 ns/iter |
5.132438000000548 ns/iter |
1.00 |
Regex_Caret_X_Hyphen |
8.790937460756101 ns/iter |
8.795477639306457 ns/iter |
1.00 |
Regex_Period_Md_Dollar |
44.880030626074614 ns/iter |
44.594205851837664 ns/iter |
1.01 |
Regex_Caret_Slash_Period_Asterisk |
8.351556919640656 ns/iter |
8.312722730748243 ns/iter |
1.00 |
Regex_Caret_Period_Range_Dollar |
5.95839553571409 ns/iter |
6.0495366071425645 ns/iter |
0.98 |
Regex_Nested_Backtrack |
56.107285714282234 ns/iter |
55.78562499999456 ns/iter |
1.01 |
JSON_Array_Of_Objects_Unique |
587.2521000001143 ns/iter |
604.5578571429035 ns/iter |
0.97 |
JSON_Parse_1 |
9390.825933812319 ns/iter |
9168.272463070773 ns/iter |
1.02 |
JSON_Parse_Real |
16020.595982147208 ns/iter |
16283.283482140729 ns/iter |
0.98 |
JSON_Parse_Decimal |
11856.508928567726 ns/iter |
11770.982812500108 ns/iter |
1.01 |
JSON_Parse_Schema_ISO_Language |
7902885.555555864 ns/iter |
7512667.77777649 ns/iter |
1.05 |
JSON_Parse_Integer |
6250.4839285720345 ns/iter |
6164.8428571418535 ns/iter |
1.01 |
JSON_Parse_String_NonSSO_Plain |
7886.957589285767 ns/iter |
7860.3381696445185 ns/iter |
1.00 |
JSON_Parse_String_SSO_Plain |
3708.638452924885 ns/iter |
3739.3663718094863 ns/iter |
0.99 |
JSON_Parse_String_Escape_Heavy |
21749.665625002024 ns/iter |
21613.984375001393 ns/iter |
1.01 |
JSON_Parse_Object_Short_Keys |
13331.523437500437 ns/iter |
13120.28593750014 ns/iter |
1.02 |
JSON_Parse_Object_Scalar_Properties |
6976.535714287024 ns/iter |
6762.48749999989 ns/iter |
1.03 |
JSON_Parse_Object_Array_Properties |
11464.21718749835 ns/iter |
11313.515625001713 ns/iter |
1.01 |
JSON_Parse_Object_Object_Properties |
11650.01071428508 ns/iter |
11606.239062498247 ns/iter |
1.00 |
JSON_Parse_Nested_Containers |
79816.40624998526 ns/iter |
78234.0736607117 ns/iter |
1.02 |
JSON_From_String_Copy |
64.1531250000073 ns/iter |
65.55275892856523 ns/iter |
0.98 |
JSON_From_String_Temporary |
58.74280357141564 ns/iter |
58.393892857152096 ns/iter |
1.01 |
JSON_Number_To_Double |
118.74814062501571 ns/iter |
120.82303125001914 ns/iter |
0.98 |
JSON_Object_At_Last_Key/8 |
7.23360825892781 ns/iter |
7.461526785714767 ns/iter |
0.97 |
JSON_Object_At_Last_Key/32 |
23.654427191352333 ns/iter |
23.55261469248837 ns/iter |
1.00 |
JSON_Object_At_Last_Key/128 |
89.57745135813869 ns/iter |
90.03935758754386 ns/iter |
0.99 |
JSON_Object_At_Last_Key/512 |
422.3661887626154 ns/iter |
427.97506250010997 ns/iter |
0.99 |
JSON_Fast_Hash_Helm_Chart_Lock |
102.64855791746052 ns/iter |
103.78442187501946 ns/iter |
0.99 |
JSON_Equality_Helm_Chart_Lock |
209.55749510903732 ns/iter |
213.5631489480752 ns/iter |
0.98 |
JSON_Divisible_By_Decimal |
303.03940591074706 ns/iter |
296.8566030294096 ns/iter |
1.02 |
JSON_String_Equal/10 |
10.430785937497689 ns/iter |
10.578368750000067 ns/iter |
0.99 |
JSON_String_Equal/100 |
11.67935357142775 ns/iter |
11.798248214286591 ns/iter |
0.99 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
2.511186493293531 ns/iter |
2.5090110714285987 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
14.276541230906664 ns/iter |
15.097970982138927 ns/iter |
0.95 |
JSON_String_Fast_Hash/10 |
6.605710714284539 ns/iter |
6.728800000000693 ns/iter |
0.98 |
JSON_String_Fast_Hash/100 |
6.5833294642853195 ns/iter |
6.77067142857116 ns/iter |
0.97 |
JSON_String_Key_Hash/10 |
5.37963303571384 ns/iter |
5.3389050000009775 ns/iter |
1.01 |
JSON_String_Key_Hash/100 |
11.89444285714103 ns/iter |
11.916892857142004 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Same_Length |
3.8308017788738344 ns/iter |
3.81755803571439 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Small |
4.117428124999378 ns/iter |
4.0916764267441375 ns/iter |
1.01 |
JSON_Object_Defines_Miss_Too_Large |
3.862559151786016 ns/iter |
3.763869419642114 ns/iter |
1.03 |
Pointer_Object_Traverse |
71.54536830356051 ns/iter |
67.32036607142992 ns/iter |
1.06 |
Pointer_Object_Try_Traverse |
75.69130580356338 ns/iter |
70.8564732142796 ns/iter |
1.07 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
191.78972248119604 ns/iter |
163.43545737290265 ns/iter |
1.17 |
Pointer_Walker_Schema_ISO_Language |
12292003.571425473 ns/iter |
10224459.375002937 ns/iter |
1.20 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
2411849.3975905785 ns/iter |
2417196.186441334 ns/iter |
1.00 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
3758156.983239686 ns/iter |
3748668.983957139 ns/iter |
1.00 |
Pointer_Position_Tracker_Get_Deeply_Nested |
518.6817605323854 ns/iter |
545.1102678569899 ns/iter |
0.95 |
JSONPath_Descendant_Filter_Nested |
2410.7969745570144 ns/iter |
2430.194162729964 ns/iter |
0.99 |
URITemplateRouter_Create |
40842.7253206422 ns/iter |
40820.09169519086 ns/iter |
1.00 |
URITemplateRouter_Match |
236.41440441799062 ns/iter |
235.82921428572132 ns/iter |
1.00 |
URITemplateRouter_Match_BasePath |
269.04924245309826 ns/iter |
276.73134478875005 ns/iter |
0.97 |
URITemplateRouterView_Restore |
34361.166764879075 ns/iter |
32702.465663518924 ns/iter |
1.05 |
URITemplateRouterView_Match |
185.09686507343744 ns/iter |
184.57461469417555 ns/iter |
1.00 |
URITemplateRouterView_Match_BasePath |
207.7193300125426 ns/iter |
212.44715625002186 ns/iter |
0.98 |
URITemplateRouterView_Arguments |
546.7554464284976 ns/iter |
538.5844642857154 ns/iter |
1.02 |
JSONL_Parse_Large |
33250690.476192873 ns/iter |
32781254.54546005 ns/iter |
1.01 |
JSONL_Parse_Large_GZIP |
33753885.71428283 ns/iter |
33620528.57142945 ns/iter |
1.00 |
JSONLD_Catalog_Annotation_List_Populate |
3316056.338028193 ns/iter |
3198218.7499995767 ns/iter |
1.04 |
JSONLD_Catalog_Materialize |
10531506.24999688 ns/iter |
7949755.555556395 ns/iter |
1.32 |
HTML_Build_Table_100000 |
93592488.88889246 ns/iter |
92959700.00000255 ns/iter |
1.01 |
HTML_Render_Table_100000 |
8469382.22222333 ns/iter |
7825104.444443948 ns/iter |
1.08 |
GZIP_Compress_ISO_Language_Set_3_Locations |
35957999.99999671 ns/iter |
35473173.68421127 ns/iter |
1.01 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
9901915.625000868 ns/iter |
9977706.250001717 ns/iter |
0.99 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2103396.562500137 ns/iter |
2121741.44927514 ns/iter |
0.99 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
646395.8999997885 ns/iter |
636961.6964286299 ns/iter |
1.01 |
JOSE_VerifySignature_RS256 |
21735.503571424684 ns/iter |
21447.12812499705 ns/iter |
1.01 |
JOSE_VerifySignature_ES512 |
1376173.8955823954 ns/iter |
1406105.2208835026 ns/iter |
0.98 |
This comment was automatically generated by workflow using github-action-benchmark.
Signed-off-by: Juan Cruz Viotti jv@jviotti.com