Fix Decimal::reduce corrupting multiple word coefficients with trailing zeros#2629
Merged
Conversation
…ling zeros Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
There was a problem hiding this comment.
Benchmark (linux/gcc)
Details
| Benchmark suite | Current: 68e8b0d | Previous: 966869b | Ratio |
|---|---|---|---|
JOSE_VerifySignature_RS256 |
22279.668615916416 ns/iter |
22100.9258999692 ns/iter |
1.01 |
JOSE_VerifySignature_ES512 |
575809.6143092703 ns/iter |
578210.206925051 ns/iter |
1.00 |
GZIP_Compress_ISO_Language_Set_3_Locations |
36317856.052631356 ns/iter |
36298919.684213616 ns/iter |
1.00 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4141215.763313768 ns/iter |
4129912.377245587 ns/iter |
1.00 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2080111.4265131156 ns/iter |
2038390.2099123953 ns/iter |
1.02 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
375660.77162819076 ns/iter |
380707.1110506308 ns/iter |
0.99 |
HTML_Build_Table_100000 |
62344095.818182476 ns/iter |
62481097.909085296 ns/iter |
1.00 |
HTML_Render_Table_100000 |
1996663.4137931997 ns/iter |
1931542.7194442237 ns/iter |
1.03 |
JSONLD_Catalog_Annotation_List_Populate |
1323190.1428570265 ns/iter |
1304166.0881800994 ns/iter |
1.01 |
JSONLD_Catalog_Materialize |
6722738.552381695 ns/iter |
6794584.432691627 ns/iter |
0.99 |
JSONL_Parse_Large |
14040012.599998591 ns/iter |
13937432.340001123 ns/iter |
1.01 |
JSONL_Parse_Large_GZIP |
15324692.086956613 ns/iter |
15269214.239130298 ns/iter |
1.00 |
URITemplateRouter_Create |
30790.897716811127 ns/iter |
30881.140955708925 ns/iter |
1.00 |
URITemplateRouter_Match |
161.60790389425628 ns/iter |
155.01174323512194 ns/iter |
1.04 |
URITemplateRouter_Match_BasePath |
182.67496626938544 ns/iter |
181.48056937921282 ns/iter |
1.01 |
URITemplateRouterView_Restore |
8613.33252650858 ns/iter |
8722.244636725934 ns/iter |
0.99 |
URITemplateRouterView_Match |
125.3124580322608 ns/iter |
124.42141375351781 ns/iter |
1.01 |
URITemplateRouterView_Match_BasePath |
147.20973394737433 ns/iter |
143.2889060536567 ns/iter |
1.03 |
URITemplateRouterView_Arguments |
485.9834361776745 ns/iter |
466.6869827872047 ns/iter |
1.04 |
JSONPath_Descendant_Filter_Nested |
1679.2822387053934 ns/iter |
1784.7932771137453 ns/iter |
0.94 |
Pointer_Object_Traverse |
32.12954010815058 ns/iter |
30.39670645874765 ns/iter |
1.06 |
Pointer_Object_Try_Traverse |
25.84512788213393 ns/iter |
26.02252482704465 ns/iter |
0.99 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
157.49784314920262 ns/iter |
153.2698416452393 ns/iter |
1.03 |
Pointer_Walker_Schema_ISO_Language |
2773287.964285622 ns/iter |
2795962.0319998064 ns/iter |
0.99 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1894327.1428572568 ns/iter |
1908400.7252749396 ns/iter |
0.99 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1724307.4619164164 ns/iter |
1717164.595588121 ns/iter |
1.00 |
Pointer_Position_Tracker_Get_Deeply_Nested |
414.22500769473373 ns/iter |
418.2689238237614 ns/iter |
0.99 |
JSON_Array_Of_Objects_Unique |
457.41550557091483 ns/iter |
455.08094280382215 ns/iter |
1.01 |
JSON_Parse_1 |
10297.65152617772 ns/iter |
10293.8556050266 ns/iter |
1.00 |
JSON_Parse_Real |
7714.073225491361 ns/iter |
7881.397568390142 ns/iter |
0.98 |
JSON_Parse_Decimal |
12954.703890770947 ns/iter |
13030.29867971578 ns/iter |
0.99 |
JSON_Parse_Schema_ISO_Language |
6793607.514563942 ns/iter |
6716912.971154005 ns/iter |
1.01 |
JSON_Parse_Integer |
5820.981276483204 ns/iter |
5820.14732929729 ns/iter |
1.00 |
JSON_Parse_String_NonSSO_Plain |
12330.549858552731 ns/iter |
12129.89578348697 ns/iter |
1.02 |
JSON_Parse_String_SSO_Plain |
5055.079758511906 ns/iter |
5147.705640544203 ns/iter |
0.98 |
JSON_Parse_String_Escape_Heavy |
26647.58051967825 ns/iter |
25758.81298060941 ns/iter |
1.03 |
JSON_Parse_Object_Short_Keys |
13808.02653902665 ns/iter |
14192.549463235933 ns/iter |
0.97 |
JSON_Parse_Object_Scalar_Properties |
7210.422596868391 ns/iter |
7165.303636533579 ns/iter |
1.01 |
JSON_Parse_Object_Array_Properties |
12779.803316119032 ns/iter |
12452.631606300236 ns/iter |
1.03 |
JSON_Parse_Object_Object_Properties |
12678.980495138492 ns/iter |
12354.195355262982 ns/iter |
1.03 |
JSON_Parse_Nested_Containers |
102414.70870650171 ns/iter |
104057.41285223413 ns/iter |
0.98 |
JSON_From_String_Copy |
17.92981973855078 ns/iter |
17.959125332112674 ns/iter |
1.00 |
JSON_From_String_Temporary |
15.040997783344348 ns/iter |
15.041354237657092 ns/iter |
1.00 |
JSON_Number_To_Double |
21.84260451747134 ns/iter |
21.883950293691353 ns/iter |
1.00 |
JSON_Object_At_Last_Key/8 |
5.613906454902402 ns/iter |
5.763250205551115 ns/iter |
0.97 |
JSON_Object_At_Last_Key/32 |
21.502537526753812 ns/iter |
21.804757284994892 ns/iter |
0.99 |
JSON_Object_At_Last_Key/128 |
87.28390103084729 ns/iter |
87.54596862010729 ns/iter |
1.00 |
JSON_Object_At_Last_Key/512 |
389.27434043071145 ns/iter |
391.9829762596868 ns/iter |
0.99 |
JSON_Fast_Hash_Helm_Chart_Lock |
83.87946428571979 ns/iter |
75.08979766371102 ns/iter |
1.12 |
JSON_Equality_Helm_Chart_Lock |
145.13499240795056 ns/iter |
147.1344133412362 ns/iter |
0.99 |
JSON_Divisible_By_Decimal |
247.897616417787 ns/iter |
243.27265587840975 ns/iter |
1.02 |
JSON_String_Equal/10 |
5.1023341888288805 ns/iter |
5.421423214971378 ns/iter |
0.94 |
JSON_String_Equal/100 |
5.7284413309280975 ns/iter |
6.038300973104644 ns/iter |
0.95 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.6238637617476276 ns/iter |
0.6237485272661657 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
25.239110115434595 ns/iter |
25.22052167925078 ns/iter |
1.00 |
JSON_String_Fast_Hash/10 |
2.571250636806426 ns/iter |
2.568319069443329 ns/iter |
1.00 |
JSON_String_Fast_Hash/100 |
2.569791474915237 ns/iter |
2.5681342760338164 ns/iter |
1.00 |
JSON_String_Key_Hash/10 |
1.248260220644284 ns/iter |
1.2478679474819405 ns/iter |
1.00 |
JSON_String_Key_Hash/100 |
12.447015375417791 ns/iter |
12.445595284153686 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Same_Length |
3.1139739187373654 ns/iter |
3.1142765468383784 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Small |
3.1146445199600143 ns/iter |
3.11316003926377 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Large |
3.115050980832929 ns/iter |
3.112310958158283 ns/iter |
1.00 |
Regex_Lower_S_Or_Upper_S_Asterisk |
0.6229275844138852 ns/iter |
0.6250131942947319 ns/iter |
1.00 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
0.6230476055644109 ns/iter |
0.9345411275174411 ns/iter |
0.67 |
Regex_Period_Asterisk |
0.6228555394513844 ns/iter |
0.6229648190423678 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
0.6231502666475729 ns/iter |
0.9339464567875949 ns/iter |
0.67 |
Regex_Period_Plus |
0.6231759549375425 ns/iter |
0.6227745845730049 ns/iter |
1.00 |
Regex_Period |
0.6227471073099895 ns/iter |
0.9343799613730558 ns/iter |
0.67 |
Regex_Caret_Period_Plus_Dollar |
0.6228848254100329 ns/iter |
0.6249578093099424 ns/iter |
1.00 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
0.6231737549054026 ns/iter |
0.9341384206281187 ns/iter |
0.67 |
Regex_Caret_Period_Asterisk_Dollar |
0.623574789518019 ns/iter |
0.6224747507276043 ns/iter |
1.00 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
0.6233054808447558 ns/iter |
0.9344291686327246 ns/iter |
0.67 |
Regex_Caret_X_Hyphen |
3.742642280867317 ns/iter |
3.7364675278439656 ns/iter |
1.00 |
Regex_Period_Md_Dollar |
30.262695560152405 ns/iter |
30.065304729540745 ns/iter |
1.01 |
Regex_Caret_Slash_Period_Asterisk |
4.047564212931216 ns/iter |
4.065745898866911 ns/iter |
1.00 |
Regex_Caret_Period_Range_Dollar |
1.2460929426590281 ns/iter |
1.556271448772993 ns/iter |
0.80 |
Regex_Nested_Backtrack |
38.17239097234319 ns/iter |
38.58889255106556 ns/iter |
0.99 |
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: 68e8b0d | Previous: 966869b | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.3245365563861027 ns/iter |
2.275773052273508 ns/iter |
1.02 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.168490800247271 ns/iter |
1.8190650648620734 ns/iter |
1.19 |
Regex_Period_Asterisk |
2.136396028751216 ns/iter |
1.723424236745136 ns/iter |
1.24 |
Regex_Group_Period_Asterisk_Group |
2.2423933504321147 ns/iter |
1.703874017334451 ns/iter |
1.32 |
Regex_Period_Plus |
2.7675314707535184 ns/iter |
2.3109933639163183 ns/iter |
1.20 |
Regex_Period |
2.7696961898073233 ns/iter |
2.37549200201673 ns/iter |
1.17 |
Regex_Caret_Period_Plus_Dollar |
2.645129514250721 ns/iter |
3.370437486496658 ns/iter |
0.78 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.6330198298558196 ns/iter |
2.821106426911061 ns/iter |
0.93 |
Regex_Caret_Period_Asterisk_Dollar |
2.2863498005781695 ns/iter |
2.2402348062688797 ns/iter |
1.02 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.361733101726759 ns/iter |
2.1987155821452657 ns/iter |
1.07 |
Regex_Caret_X_Hyphen |
7.904429726359867 ns/iter |
7.443048654362473 ns/iter |
1.06 |
Regex_Period_Md_Dollar |
21.65646162816379 ns/iter |
23.57711466597133 ns/iter |
0.92 |
Regex_Caret_Slash_Period_Asterisk |
6.243514200924781 ns/iter |
6.291157961406636 ns/iter |
0.99 |
Regex_Caret_Period_Range_Dollar |
2.929563362728545 ns/iter |
2.714178166903204 ns/iter |
1.08 |
Regex_Nested_Backtrack |
36.03555700195609 ns/iter |
30.592390094828232 ns/iter |
1.18 |
JSON_Array_Of_Objects_Unique |
483.62459933643686 ns/iter |
424.2983851910939 ns/iter |
1.14 |
JSON_Parse_1 |
10679.954552092704 ns/iter |
11220.369919990062 ns/iter |
0.95 |
JSON_Parse_Real |
9358.343707623648 ns/iter |
11880.715661103359 ns/iter |
0.79 |
JSON_Parse_Decimal |
9651.310184446304 ns/iter |
10052.03173864084 ns/iter |
0.96 |
JSON_Parse_Schema_ISO_Language |
4530216.845070536 ns/iter |
4312869.890322286 ns/iter |
1.05 |
JSON_Parse_Integer |
5537.840019123387 ns/iter |
4747.017120779974 ns/iter |
1.17 |
JSON_Parse_String_NonSSO_Plain |
9908.840909397473 ns/iter |
8048.542765627465 ns/iter |
1.23 |
JSON_Parse_String_SSO_Plain |
3590.049168652437 ns/iter |
3910.9169302092573 ns/iter |
0.92 |
JSON_Parse_String_Escape_Heavy |
27421.973965417696 ns/iter |
24810.665854191015 ns/iter |
1.11 |
JSON_Parse_Object_Short_Keys |
10395.877026958038 ns/iter |
8938.991061395964 ns/iter |
1.16 |
JSON_Parse_Object_Scalar_Properties |
5265.947734901771 ns/iter |
5098.744836352528 ns/iter |
1.03 |
JSON_Parse_Object_Array_Properties |
8787.44850004465 ns/iter |
9839.675772589015 ns/iter |
0.89 |
JSON_Parse_Object_Object_Properties |
9690.583233935238 ns/iter |
11378.83333135295 ns/iter |
0.85 |
JSON_Parse_Nested_Containers |
80391.8540647422 ns/iter |
102000.1628876794 ns/iter |
0.79 |
JSON_From_String_Copy |
31.74296880242196 ns/iter |
42.2461140481483 ns/iter |
0.75 |
JSON_From_String_Temporary |
29.324046908365844 ns/iter |
32.66700220552635 ns/iter |
0.90 |
JSON_Number_To_Double |
58.30299976213639 ns/iter |
48.48984883983602 ns/iter |
1.20 |
JSON_Object_At_Last_Key/8 |
5.848295928610996 ns/iter |
5.3423230131546156 ns/iter |
1.09 |
JSON_Object_At_Last_Key/32 |
14.758645621071219 ns/iter |
17.21720147623178 ns/iter |
0.86 |
JSON_Object_At_Last_Key/128 |
63.853257415056106 ns/iter |
80.44599962849489 ns/iter |
0.79 |
JSON_Object_At_Last_Key/512 |
210.85343905088772 ns/iter |
241.57096903125606 ns/iter |
0.87 |
JSON_Fast_Hash_Helm_Chart_Lock |
67.19881068135854 ns/iter |
79.16732585899629 ns/iter |
0.85 |
JSON_Equality_Helm_Chart_Lock |
146.0874921755986 ns/iter |
212.19643341784712 ns/iter |
0.69 |
JSON_Divisible_By_Decimal |
204.9110308330625 ns/iter |
232.8605987096831 ns/iter |
0.88 |
JSON_String_Equal/10 |
7.403919553218179 ns/iter |
8.649630582472591 ns/iter |
0.86 |
JSON_String_Equal/100 |
7.36242189416363 ns/iter |
7.228347907385374 ns/iter |
1.02 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.4023007996102323 ns/iter |
0.4029327292694728 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
4.372833283066869 ns/iter |
3.6884027294733115 ns/iter |
1.19 |
JSON_String_Fast_Hash/10 |
2.8414793302261714 ns/iter |
2.8165791980821018 ns/iter |
1.01 |
JSON_String_Fast_Hash/100 |
2.6168774770089107 ns/iter |
2.890430967043733 ns/iter |
0.91 |
JSON_String_Key_Hash/10 |
2.1185982524045257 ns/iter |
2.133738024757339 ns/iter |
0.99 |
JSON_String_Key_Hash/100 |
2.558060357164341 ns/iter |
2.3406180195124504 ns/iter |
1.09 |
JSON_Object_Defines_Miss_Same_Length |
6.564244559457251 ns/iter |
2.8713352907619845 ns/iter |
2.29 |
JSON_Object_Defines_Miss_Too_Small |
3.721115457481759 ns/iter |
2.7836706502522444 ns/iter |
1.34 |
JSON_Object_Defines_Miss_Too_Large |
3.6072981443945467 ns/iter |
3.0047399060766966 ns/iter |
1.20 |
Pointer_Object_Traverse |
33.74002840655297 ns/iter |
23.61078725461542 ns/iter |
1.43 |
Pointer_Object_Try_Traverse |
30.564545748396842 ns/iter |
22.66233245784944 ns/iter |
1.35 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
272.30368675673657 ns/iter |
213.84555310650595 ns/iter |
1.27 |
Pointer_Walker_Schema_ISO_Language |
5195592.656716327 ns/iter |
3096162.147783038 ns/iter |
1.68 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1592979.0745615405 ns/iter |
1492479.1257606696 ns/iter |
1.07 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1328857.1073559127 ns/iter |
1295919.702325704 ns/iter |
1.03 |
Pointer_Position_Tracker_Get_Deeply_Nested |
428.12133399881844 ns/iter |
370.7446751827866 ns/iter |
1.15 |
JSONPath_Descendant_Filter_Nested |
1450.9218262702962 ns/iter |
1352.2540414717885 ns/iter |
1.07 |
URITemplateRouter_Create |
27573.773920408126 ns/iter |
25349.38909104602 ns/iter |
1.09 |
URITemplateRouter_Match |
202.95414623921926 ns/iter |
181.92232724021255 ns/iter |
1.12 |
URITemplateRouter_Match_BasePath |
240.62827741309724 ns/iter |
219.16687693924942 ns/iter |
1.10 |
URITemplateRouterView_Restore |
13604.181519866841 ns/iter |
12860.603517686046 ns/iter |
1.06 |
URITemplateRouterView_Match |
179.60288038150426 ns/iter |
154.6187459916186 ns/iter |
1.16 |
URITemplateRouterView_Match_BasePath |
184.49731318169438 ns/iter |
171.85447985552824 ns/iter |
1.07 |
URITemplateRouterView_Arguments |
707.5965825853598 ns/iter |
629.7665452603934 ns/iter |
1.12 |
JSONL_Parse_Large |
17159060.177777972 ns/iter |
11954983.745762533 ns/iter |
1.44 |
JSONL_Parse_Large_GZIP |
12587380.615385132 ns/iter |
12800829.967741925 ns/iter |
0.98 |
JSONLD_Catalog_Annotation_List_Populate |
880994.2330507855 ns/iter |
961726.1641104099 ns/iter |
0.92 |
JSONLD_Catalog_Materialize |
4522895.424836599 ns/iter |
4759623.308942773 ns/iter |
0.95 |
HTML_Build_Table_100000 |
36608425.421054326 ns/iter |
44758847.22222645 ns/iter |
0.82 |
HTML_Render_Table_100000 |
1784687.9689265944 ns/iter |
1826600.7542372579 ns/iter |
0.98 |
GZIP_Compress_ISO_Language_Set_3_Locations |
27087904.296296176 ns/iter |
27639240.545454416 ns/iter |
0.98 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
3312950.918269254 ns/iter |
3499148.5507243457 ns/iter |
0.95 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1559917.1252745863 ns/iter |
1578963.0391703334 ns/iter |
0.99 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
279773.42052982847 ns/iter |
290164.14101465064 ns/iter |
0.96 |
JOSE_VerifySignature_RS256 |
22055.327106133784 ns/iter |
36747.19690944665 ns/iter |
0.60 |
JOSE_VerifySignature_ES512 |
1428838.9581749034 ns/iter |
1472705.755376378 ns/iter |
0.97 |
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: 68e8b0d | Previous: 966869b | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.4765803722504476 ns/iter |
2.214986323597745 ns/iter |
1.12 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.4636185662944623 ns/iter |
2.1915788326695176 ns/iter |
1.12 |
Regex_Period_Asterisk |
2.4621939091740845 ns/iter |
2.1885377054278505 ns/iter |
1.13 |
Regex_Group_Period_Asterisk_Group |
2.462916909765675 ns/iter |
2.1846101175218204 ns/iter |
1.13 |
Regex_Period_Plus |
3.4003293922057485 ns/iter |
2.8013260245631857 ns/iter |
1.21 |
Regex_Period |
2.4614850507389145 ns/iter |
2.8319202863266772 ns/iter |
0.87 |
Regex_Caret_Period_Plus_Dollar |
2.4625345579645077 ns/iter |
2.2232501429094085 ns/iter |
1.11 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.463934097441024 ns/iter |
2.2282431502986166 ns/iter |
1.11 |
Regex_Caret_Period_Asterisk_Dollar |
3.8677491802189166 ns/iter |
2.4913299046760375 ns/iter |
1.55 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
3.8680890680114985 ns/iter |
2.4904271160593976 ns/iter |
1.55 |
Regex_Caret_X_Hyphen |
6.970183319825624 ns/iter |
6.542240319419182 ns/iter |
1.07 |
Regex_Period_Md_Dollar |
26.28964316253345 ns/iter |
27.28474068503849 ns/iter |
0.96 |
Regex_Caret_Slash_Period_Asterisk |
7.384708719074846 ns/iter |
7.1678315742231105 ns/iter |
1.03 |
Regex_Caret_Period_Range_Dollar |
4.5793141682391925 ns/iter |
4.358675231526067 ns/iter |
1.05 |
Regex_Nested_Backtrack |
38.21386702638701 ns/iter |
38.073296401810005 ns/iter |
1.00 |
JSON_Array_Of_Objects_Unique |
479.42973797794656 ns/iter |
458.78121807167264 ns/iter |
1.05 |
JSON_Parse_1 |
4690.166763502107 ns/iter |
4840.198540791036 ns/iter |
0.97 |
JSON_Parse_Real |
5226.68890888665 ns/iter |
5339.247645038777 ns/iter |
0.98 |
JSON_Parse_Decimal |
7802.23637069491 ns/iter |
7629.509948110839 ns/iter |
1.02 |
JSON_Parse_Schema_ISO_Language |
3595255.615384583 ns/iter |
3450848.1871920493 ns/iter |
1.04 |
JSON_Parse_Integer |
3989.4841662249682 ns/iter |
3890.180960954436 ns/iter |
1.03 |
JSON_Parse_String_NonSSO_Plain |
5047.924749999311 ns/iter |
4928.478793259119 ns/iter |
1.02 |
JSON_Parse_String_SSO_Plain |
2808.3352669047563 ns/iter |
2692.6419882909654 ns/iter |
1.04 |
JSON_Parse_String_Escape_Heavy |
14588.351689224184 ns/iter |
14155.729100572125 ns/iter |
1.03 |
JSON_Parse_Object_Short_Keys |
7785.02993441089 ns/iter |
10361.259436752378 ns/iter |
0.75 |
JSON_Parse_Object_Scalar_Properties |
4110.723358228851 ns/iter |
4137.994066365405 ns/iter |
0.99 |
JSON_Parse_Object_Array_Properties |
5496.582163339446 ns/iter |
5411.02986007719 ns/iter |
1.02 |
JSON_Parse_Object_Object_Properties |
5474.797396257217 ns/iter |
5342.403629823224 ns/iter |
1.02 |
JSON_Parse_Nested_Containers |
45419.570279830135 ns/iter |
44726.542822370415 ns/iter |
1.02 |
JSON_From_String_Copy |
21.057781498940074 ns/iter |
19.359948051040966 ns/iter |
1.09 |
JSON_From_String_Temporary |
18.662864599823724 ns/iter |
17.444863681867535 ns/iter |
1.07 |
JSON_Number_To_Double |
22.806603252430726 ns/iter |
23.709097214038934 ns/iter |
0.96 |
JSON_Object_At_Last_Key/8 |
6.6256489909578375 ns/iter |
5.918459892040408 ns/iter |
1.12 |
JSON_Object_At_Last_Key/32 |
23.601432931743545 ns/iter |
21.800494309589894 ns/iter |
1.08 |
JSON_Object_At_Last_Key/128 |
91.15822909233769 ns/iter |
87.89123447649993 ns/iter |
1.04 |
JSON_Object_At_Last_Key/512 |
381.0226285359888 ns/iter |
404.44935324921164 ns/iter |
0.94 |
JSON_Fast_Hash_Helm_Chart_Lock |
68.58138111476981 ns/iter |
56.62761619267085 ns/iter |
1.21 |
JSON_Equality_Helm_Chart_Lock |
164.6570539791319 ns/iter |
154.5296245970208 ns/iter |
1.07 |
JSON_Divisible_By_Decimal |
253.04069981781691 ns/iter |
254.51287473398014 ns/iter |
0.99 |
JSON_String_Equal/10 |
5.631595430539375 ns/iter |
5.922801971350426 ns/iter |
0.95 |
JSON_String_Equal/100 |
6.412302889524343 ns/iter |
6.548685496941712 ns/iter |
0.98 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
1.054985518984394 ns/iter |
0.9353587361713253 ns/iter |
1.13 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
12.339364006798274 ns/iter |
10.482162693476138 ns/iter |
1.18 |
JSON_String_Fast_Hash/10 |
2.111555601678372 ns/iter |
2.184470345195639 ns/iter |
0.97 |
JSON_String_Fast_Hash/100 |
2.1108984500370886 ns/iter |
2.1797816963104895 ns/iter |
0.97 |
JSON_String_Key_Hash/10 |
2.8555179441232212 ns/iter |
2.4956941325100765 ns/iter |
1.14 |
JSON_String_Key_Hash/100 |
8.090927098640625 ns/iter |
6.563576542534091 ns/iter |
1.23 |
JSON_Object_Defines_Miss_Same_Length |
2.9164168777833384 ns/iter |
2.6972017687621364 ns/iter |
1.08 |
JSON_Object_Defines_Miss_Too_Small |
2.994452809559506 ns/iter |
2.6818120403861743 ns/iter |
1.12 |
JSON_Object_Defines_Miss_Too_Large |
3.205007264947405 ns/iter |
3.1953411463674986 ns/iter |
1.00 |
Pointer_Object_Traverse |
30.604274384608495 ns/iter |
28.742522110845112 ns/iter |
1.06 |
Pointer_Object_Try_Traverse |
33.57254541672214 ns/iter |
30.998772774405904 ns/iter |
1.08 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
186.38448940270527 ns/iter |
162.4598397661665 ns/iter |
1.15 |
Pointer_Walker_Schema_ISO_Language |
2853769.2669324963 ns/iter |
2662442.5209124796 ns/iter |
1.07 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1241067.754884592 ns/iter |
1209021.7001733347 ns/iter |
1.03 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1597571.9334863562 ns/iter |
1588101.9409091964 ns/iter |
1.01 |
Pointer_Position_Tracker_Get_Deeply_Nested |
718.3754528361555 ns/iter |
690.2992960060777 ns/iter |
1.04 |
JSONPath_Descendant_Filter_Nested |
1639.2454160591096 ns/iter |
1616.272181744328 ns/iter |
1.01 |
URITemplateRouter_Create |
30737.98183145573 ns/iter |
32028.660464902932 ns/iter |
0.96 |
URITemplateRouter_Match |
177.47390879234808 ns/iter |
173.02431105585114 ns/iter |
1.03 |
URITemplateRouter_Match_BasePath |
210.3652478242414 ns/iter |
198.93231756203176 ns/iter |
1.06 |
URITemplateRouterView_Restore |
9908.632867570182 ns/iter |
8439.35763888938 ns/iter |
1.17 |
URITemplateRouterView_Match |
145.6959001327912 ns/iter |
146.27079663283666 ns/iter |
1.00 |
URITemplateRouterView_Match_BasePath |
165.13802738431278 ns/iter |
164.83585925340327 ns/iter |
1.00 |
URITemplateRouterView_Arguments |
458.9206485685429 ns/iter |
428.88895835709343 ns/iter |
1.07 |
JSONL_Parse_Large |
9053956.128204787 ns/iter |
9845602.028168337 ns/iter |
0.92 |
JSONL_Parse_Large_GZIP |
10768278.123077834 ns/iter |
11525800.344263755 ns/iter |
0.93 |
JSONLD_Catalog_Annotation_List_Populate |
1264879.236036044 ns/iter |
1254835.4586330606 ns/iter |
1.01 |
JSONLD_Catalog_Materialize |
4301342.030487376 ns/iter |
4166132.329341799 ns/iter |
1.03 |
HTML_Build_Table_100000 |
71575555.8000069 ns/iter |
68218695.09999487 ns/iter |
1.05 |
HTML_Render_Table_100000 |
4860989.72222256 ns/iter |
5291064.952755761 ns/iter |
0.92 |
GZIP_Compress_ISO_Language_Set_3_Locations |
35779158.39999832 ns/iter |
33533124.8571449 ns/iter |
1.07 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4296526.969512354 ns/iter |
4301576.136646155 ns/iter |
1.00 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2116661.326284035 ns/iter |
1860346.9015958237 ns/iter |
1.14 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
276091.2739456177 ns/iter |
356484.16785352636 ns/iter |
0.77 |
JOSE_VerifySignature_RS256 |
63903.41384348666 ns/iter |
58196.343261353046 ns/iter |
1.10 |
JOSE_VerifySignature_ES512 |
2737304.1439691423 ns/iter |
2360969.1486487584 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: 68e8b0d | Previous: 966869b | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.494972142856763 ns/iter |
5.020503571428899 ns/iter |
0.50 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.479292857142517 ns/iter |
4.960992999999689 ns/iter |
0.50 |
Regex_Period_Asterisk |
2.476053345451237 ns/iter |
4.954082142857276 ns/iter |
0.50 |
Regex_Group_Period_Asterisk_Group |
2.476524642857417 ns/iter |
4.959664285713927 ns/iter |
0.50 |
Regex_Period_Plus |
2.6179563586852206 ns/iter |
5.441138999999566 ns/iter |
0.48 |
Regex_Period |
2.4814372740167667 ns/iter |
5.498776785714198 ns/iter |
0.45 |
Regex_Caret_Period_Plus_Dollar |
2.4774160714287063 ns/iter |
5.716585999999779 ns/iter |
0.43 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.4816171428572686 ns/iter |
4.6512594975076835 ns/iter |
0.53 |
Regex_Caret_Period_Asterisk_Dollar |
2.48341071428594 ns/iter |
5.022242000000006 ns/iter |
0.49 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.4727157142852514 ns/iter |
4.977627999999186 ns/iter |
0.50 |
Regex_Caret_X_Hyphen |
4.748466071427109 ns/iter |
7.9079508928574835 ns/iter |
0.60 |
Regex_Period_Md_Dollar |
25.23729324935805 ns/iter |
57.428383928562916 ns/iter |
0.44 |
Regex_Caret_Slash_Period_Asterisk |
3.338692505216203 ns/iter |
7.5300424107143415 ns/iter |
0.44 |
Regex_Caret_Period_Range_Dollar |
2.4791949999999883 ns/iter |
5.544351999999435 ns/iter |
0.45 |
Regex_Nested_Backtrack |
32.96559612438332 ns/iter |
77.57118303571683 ns/iter |
0.42 |
JSON_Array_Of_Objects_Unique |
473.9585209729579 ns/iter |
648.4866071428793 ns/iter |
0.73 |
JSON_Parse_1 |
6440.445535714291 ns/iter |
9261.712670926008 ns/iter |
0.70 |
JSON_Parse_Real |
10441.460937499869 ns/iter |
16762.624303286597 ns/iter |
0.62 |
JSON_Parse_Decimal |
7828.10825892964 ns/iter |
11431.021428571901 ns/iter |
0.68 |
JSON_Parse_Schema_ISO_Language |
7676775.555556661 ns/iter |
8212430.666665872 ns/iter |
0.93 |
JSON_Parse_Integer |
3795.995007152199 ns/iter |
5887.077678571423 ns/iter |
0.64 |
JSON_Parse_String_NonSSO_Plain |
5528.608035713692 ns/iter |
7751.257812500205 ns/iter |
0.71 |
JSON_Parse_String_SSO_Plain |
2420.5943749997514 ns/iter |
3608.4766124353564 ns/iter |
0.67 |
JSON_Parse_String_Escape_Heavy |
17015.495862697677 ns/iter |
21712.931250000624 ns/iter |
0.78 |
JSON_Parse_Object_Short_Keys |
8638.869915760044 ns/iter |
12907.028571427354 ns/iter |
0.67 |
JSON_Parse_Object_Scalar_Properties |
4476.931442294128 ns/iter |
6715.035714285429 ns/iter |
0.67 |
JSON_Parse_Object_Array_Properties |
8049.412946429564 ns/iter |
11510.589062501353 ns/iter |
0.70 |
JSON_Parse_Object_Object_Properties |
7873.866071427419 ns/iter |
11692.845312499145 ns/iter |
0.67 |
JSON_Parse_Nested_Containers |
53578.95535713705 ns/iter |
81574.09598213507 ns/iter |
0.66 |
JSON_From_String_Copy |
39.92603794642184 ns/iter |
66.5440892857256 ns/iter |
0.60 |
JSON_From_String_Temporary |
47.452606155446524 ns/iter |
89.64957589286473 ns/iter |
0.53 |
JSON_Number_To_Double |
75.3877343749971 ns/iter |
132.82076785714025 ns/iter |
0.57 |
JSON_Object_At_Last_Key/8 |
6.97055089285722 ns/iter |
7.613120535714708 ns/iter |
0.92 |
JSON_Object_At_Last_Key/32 |
24.498260714283656 ns/iter |
24.73047963470368 ns/iter |
0.99 |
JSON_Object_At_Last_Key/128 |
51.5967400000136 ns/iter |
98.81088844593036 ns/iter |
0.52 |
JSON_Object_At_Last_Key/512 |
157.50444358289735 ns/iter |
428.81888843164114 ns/iter |
0.37 |
JSON_Fast_Hash_Helm_Chart_Lock |
75.41383928571271 ns/iter |
124.36704687502242 ns/iter |
0.61 |
JSON_Equality_Helm_Chart_Lock |
200.21474109061174 ns/iter |
208.0956625850112 ns/iter |
0.96 |
JSON_Divisible_By_Decimal |
224.54659324255235 ns/iter |
357.677328467635 ns/iter |
0.63 |
JSON_String_Equal/10 |
7.78682031250152 ns/iter |
9.98385624999898 ns/iter |
0.78 |
JSON_String_Equal/100 |
9.959497723396147 ns/iter |
11.347940625000774 ns/iter |
0.88 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
1.098265468749915 ns/iter |
2.175646609085869 ns/iter |
0.50 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
9.248813616071772 ns/iter |
15.849114438176475 ns/iter |
0.58 |
JSON_String_Fast_Hash/10 |
3.045153745921051 ns/iter |
6.3933625000000145 ns/iter |
0.48 |
JSON_String_Fast_Hash/100 |
3.041517410714789 ns/iter |
6.399595535713486 ns/iter |
0.48 |
JSON_String_Key_Hash/10 |
2.475857500000497 ns/iter |
4.956712999999127 ns/iter |
0.50 |
JSON_String_Key_Hash/100 |
7.902501116071445 ns/iter |
10.98787812500035 ns/iter |
0.72 |
JSON_Object_Defines_Miss_Same_Length |
1.7091385056087516 ns/iter |
3.8900982142856373 ns/iter |
0.44 |
JSON_Object_Defines_Miss_Too_Small |
1.7266709832993214 ns/iter |
4.347173125000836 ns/iter |
0.40 |
JSON_Object_Defines_Miss_Too_Large |
1.6558464520019744 ns/iter |
3.8932499999993246 ns/iter |
0.43 |
Pointer_Object_Traverse |
43.111874999993915 ns/iter |
76.5148214285765 ns/iter |
0.56 |
Pointer_Object_Try_Traverse |
45.5268147720855 ns/iter |
69.96341517856916 ns/iter |
0.65 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
129.09828571427593 ns/iter |
162.73403545089172 ns/iter |
0.79 |
Pointer_Walker_Schema_ISO_Language |
9961968.75000166 ns/iter |
13076626.000001853 ns/iter |
0.76 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
2142694.696969426 ns/iter |
2449303.614457859 ns/iter |
0.87 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
3615466.3101608804 ns/iter |
3664071.1229950134 ns/iter |
0.99 |
Pointer_Position_Tracker_Get_Deeply_Nested |
472.95062500012364 ns/iter |
538.0003320810969 ns/iter |
0.88 |
JSONPath_Descendant_Filter_Nested |
1471.948137523135 ns/iter |
2600.8982142855075 ns/iter |
0.57 |
URITemplateRouter_Create |
31031.156250002874 ns/iter |
39755.000000000044 ns/iter |
0.78 |
URITemplateRouter_Match |
211.44452627481402 ns/iter |
216.02345687395123 ns/iter |
0.98 |
URITemplateRouter_Match_BasePath |
239.11353358106368 ns/iter |
244.86857758165792 ns/iter |
0.98 |
URITemplateRouterView_Restore |
14395.28305677492 ns/iter |
24930.37499999673 ns/iter |
0.58 |
URITemplateRouterView_Match |
146.60941964288148 ns/iter |
170.61406276433314 ns/iter |
0.86 |
URITemplateRouterView_Match_BasePath |
166.63304464062858 ns/iter |
195.01212455465313 ns/iter |
0.85 |
URITemplateRouterView_Arguments |
400.6753348214177 ns/iter |
604.857053571298 ns/iter |
0.66 |
JSONL_Parse_Large |
21238785.294117942 ns/iter |
32671923.80952197 ns/iter |
0.65 |
JSONL_Parse_Large_GZIP |
21504771.875001438 ns/iter |
33202274.99999646 ns/iter |
0.65 |
JSONLD_Catalog_Annotation_List_Populate |
1983192.225201365 ns/iter |
2915260.642570516 ns/iter |
0.68 |
JSONLD_Catalog_Materialize |
5732827.678571084 ns/iter |
10037987.499998735 ns/iter |
0.57 |
HTML_Build_Table_100000 |
91103814.28568612 ns/iter |
91648477.77777949 ns/iter |
0.99 |
HTML_Render_Table_100000 |
12599818.000003323 ns/iter |
8281518.666666064 ns/iter |
1.52 |
GZIP_Compress_ISO_Language_Set_3_Locations |
27901799.99999964 ns/iter |
38022999.99999473 ns/iter |
0.73 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
11887192.857139034 ns/iter |
11180464.062498175 ns/iter |
1.06 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1746941.2776411935 ns/iter |
2287939.130434876 ns/iter |
0.76 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
623565.8035714258 ns/iter |
581046.0714284561 ns/iter |
1.07 |
JOSE_VerifySignature_RS256 |
17223.79502541361 ns/iter |
23733.585562664317 ns/iter |
0.73 |
JOSE_VerifySignature_ES512 |
927256.3587682389 ns/iter |
1531734.337349296 ns/iter |
0.61 |
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