Add a few GZIP related benchmark cases#2385
Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
🤖 Augment PR SummarySummary: Adds GZIP-related benchmarks to measure compression and decompression performance on real-world ISO language JSON datasets. Changes:
🤖 Was this summary useful? React with 👍 or 👎 |
| std::filesystem::path{CURRENT_DIRECTORY} / "files" / | ||
| "iso_language_2023_set_3_locations.json.gz"}; | ||
| const auto contents{ | ||
| sourcemeta::core::gunzip(view.as<std::uint8_t>(), view.size())}; |
There was a problem hiding this comment.
FileView::as<std::uint8_t>() asserts that the file has at least 1 byte; if a benchmark fixture is empty/corrupt this would abort in debug builds before gunzip() can report a decompression error.
Severity: low
Other Locations
benchmark/gzip.cc:32benchmark/gzip.cc:35benchmark/gzip.cc:47benchmark/gzip.cc:60benchmark/gzip.cc:63
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
There was a problem hiding this comment.
Benchmark (macos/llvm)
Details
| Benchmark suite | Current: 9e0e0c5 | Previous: 3ea0eb1 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
1.7342865395444707 ns/iter |
1.5698181922399403 ns/iter |
1.10 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.735771644829538 ns/iter |
1.569407965493418 ns/iter |
1.11 |
Regex_Period_Asterisk |
1.7374127473438952 ns/iter |
1.574373242168997 ns/iter |
1.10 |
Regex_Group_Period_Asterisk_Group |
1.8537720829430733 ns/iter |
1.5819667576824499 ns/iter |
1.17 |
Regex_Period_Plus |
2.070719976787804 ns/iter |
1.884298853126068 ns/iter |
1.10 |
Regex_Period |
2.0636381246153164 ns/iter |
1.8911737322260076 ns/iter |
1.09 |
Regex_Caret_Period_Plus_Dollar |
2.1145885121316876 ns/iter |
1.8845997346308063 ns/iter |
1.12 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.134996122828905 ns/iter |
1.930152992888423 ns/iter |
1.11 |
Regex_Caret_Period_Asterisk_Dollar |
1.8227412650198915 ns/iter |
1.5706264705602877 ns/iter |
1.16 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.722357374569905 ns/iter |
1.58150518266327 ns/iter |
1.09 |
Regex_Caret_X_Hyphen |
6.159094358938483 ns/iter |
5.884488256715724 ns/iter |
1.05 |
Regex_Period_Md_Dollar |
16.65317117621312 ns/iter |
15.496457143057535 ns/iter |
1.07 |
Regex_Caret_Slash_Period_Asterisk |
8.168298013039221 ns/iter |
7.460727086113721 ns/iter |
1.09 |
Regex_Caret_Period_Range_Dollar |
1.7188169355343952 ns/iter |
1.5845376002120732 ns/iter |
1.08 |
Regex_Nested_Backtrack |
24.969720290444037 ns/iter |
22.822188687977736 ns/iter |
1.09 |
JSON_Array_Of_Objects_Unique |
347.24997218088237 ns/iter |
316.22787244112726 ns/iter |
1.10 |
JSON_Parse_1 |
4606.460348732566 ns/iter |
3620.8767965678553 ns/iter |
1.27 |
JSON_Parse_Real |
6726.011322701475 ns/iter |
6021.088988344239 ns/iter |
1.12 |
JSON_Parse_Decimal |
8306.446848898706 ns/iter |
7575.579163910386 ns/iter |
1.10 |
JSON_Parse_Schema_ISO_Language |
3727123.717948626 ns/iter |
4113811.4000013475 ns/iter |
0.91 |
JSON_Fast_Hash_Helm_Chart_Lock |
60.55974854453861 ns/iter |
54.54012576315847 ns/iter |
1.11 |
JSON_Equality_Helm_Chart_Lock |
139.80978394322196 ns/iter |
128.50931753017798 ns/iter |
1.09 |
JSON_Divisible_By_Decimal |
175.839428727864 ns/iter |
170.06924709463377 ns/iter |
1.03 |
JSON_String_Equal/10 |
6.919081445202065 ns/iter |
6.285967552422091 ns/iter |
1.10 |
JSON_String_Equal/100 |
6.554156096702538 ns/iter |
5.991900713800797 ns/iter |
1.09 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7655712792046558 ns/iter |
0.6926556776925361 ns/iter |
1.11 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
3.3048668111689663 ns/iter |
3.015011209723364 ns/iter |
1.10 |
JSON_String_Fast_Hash/10 |
2.4098502178268757 ns/iter |
2.1994693053412155 ns/iter |
1.10 |
JSON_String_Fast_Hash/100 |
2.053192336172001 ns/iter |
1.8871473039254887 ns/iter |
1.09 |
JSON_String_Key_Hash/10 |
1.4090830842226054 ns/iter |
1.2693936908392864 ns/iter |
1.11 |
JSON_String_Key_Hash/100 |
2.2773462754357836 ns/iter |
2.0036656500716825 ns/iter |
1.14 |
JSON_Object_Defines_Miss_Same_Length |
2.395828446485489 ns/iter |
2.291484394990364 ns/iter |
1.05 |
JSON_Object_Defines_Miss_Too_Small |
2.423519691872833 ns/iter |
2.221377646409658 ns/iter |
1.09 |
JSON_Object_Defines_Miss_Too_Large |
2.682542135100564 ns/iter |
2.2274432189876823 ns/iter |
1.20 |
Pointer_Object_Traverse |
14.011792752489656 ns/iter |
13.862741943306347 ns/iter |
1.01 |
Pointer_Object_Try_Traverse |
19.077787244628585 ns/iter |
17.839345643431088 ns/iter |
1.07 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
160.80199043462494 ns/iter |
143.35191123002275 ns/iter |
1.12 |
Pointer_Walker_Schema_ISO_Language |
4893702.848684412 ns/iter |
3616198.247369826 ns/iter |
1.35 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1187079.8212478682 ns/iter |
1046746.742749093 ns/iter |
1.13 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1475197.2891565538 ns/iter |
1211082.2115390035 ns/iter |
1.22 |
Pointer_Position_Tracker_Get_Deeply_Nested |
399.07347462182037 ns/iter |
323.3776452320159 ns/iter |
1.23 |
Schema_Frame_WoT_References |
5647442.090000822 ns/iter |
4313403.201219843 ns/iter |
1.31 |
Schema_Frame_OMC_References |
24830384.615383465 ns/iter |
24352811.740738146 ns/iter |
1.02 |
Schema_Frame_OMC_Locations |
23914862.90322621 ns/iter |
21860881.50000387 ns/iter |
1.09 |
Schema_Frame_ISO_Language_Locations |
75482573.99999632 ns/iter |
67904694.44447607 ns/iter |
1.11 |
Schema_Frame_KrakenD_References |
44142731.75000005 ns/iter |
52625549.49999298 ns/iter |
0.84 |
Schema_Frame_KrakenD_Reachable |
439065333.49996835 ns/iter |
329712375.0003266 ns/iter |
1.33 |
Schema_Iterator_ISO_Language |
2344582.247557087 ns/iter |
1998794.7002795388 ns/iter |
1.17 |
Schema_Frame_ISO_Language_Locations_To_JSON |
70585833.40000269 ns/iter |
87754732.14284699 ns/iter |
0.80 |
Schema_Tracker_ISO_Language |
4667192.370129817 ns/iter |
4452815.789474435 ns/iter |
1.05 |
Schema_Tracker_ISO_Language_To_JSON |
14640304.16000014 ns/iter |
12905144.736841496 ns/iter |
1.13 |
Schema_Format_ISO_Language_To_JSON |
77636333.22221924 ns/iter |
66896520.79999177 ns/iter |
1.16 |
Schema_Bundle_Meta_2020_12 |
1407419.1294111293 ns/iter |
1187436.5331202303 ns/iter |
1.19 |
Schema_Frame_Many_Resources_References |
277645541.9999593 ns/iter |
260300360.99988744 ns/iter |
1.07 |
EditorSchema_ForEditor_EmbeddedResources |
11290956.328133816 ns/iter |
9490698.810813647 ns/iter |
1.19 |
URITemplateRouter_Create |
23682.53560725924 ns/iter |
21469.476828274866 ns/iter |
1.10 |
URITemplateRouter_Match |
175.82745131216797 ns/iter |
159.03552689384637 ns/iter |
1.11 |
URITemplateRouter_Match_BasePath |
190.7921183323536 ns/iter |
181.80024578576965 ns/iter |
1.05 |
URITemplateRouterView_Restore |
9581.644943233023 ns/iter |
8585.011010236733 ns/iter |
1.12 |
URITemplateRouterView_Match |
128.08075208746374 ns/iter |
121.13651627907939 ns/iter |
1.06 |
URITemplateRouterView_Match_BasePath |
144.94507511009073 ns/iter |
136.59277326768742 ns/iter |
1.06 |
URITemplateRouterView_Arguments |
403.70077248826897 ns/iter |
375.0406541529047 ns/iter |
1.08 |
JSONL_Parse_Large |
12438818.181817623 ns/iter |
11125003.370968824 ns/iter |
1.12 |
JSONL_Parse_Large_GZIP |
13856183.50000055 ns/iter |
12004312.864403693 ns/iter |
1.15 |
HTML_Build_Table_100000 |
60066399.999993786 ns/iter |
62047395.83332261 ns/iter |
0.97 |
HTML_Render_Table_100000 |
3250142.4088892844 ns/iter |
2329958.746710609 ns/iter |
1.39 |
GZIP_Compress_ISO_Language_Set_3_Locations |
29345149.333333135 ns/iter |
||
GZIP_Decompress_ISO_Language_Set_3_Locations |
5188181.407692565 ns/iter |
||
GZIP_Compress_ISO_Language_Set_3_Schema |
1539137.0614034822 ns/iter |
||
GZIP_Decompress_ISO_Language_Set_3_Schema |
288431.7307692105 ns/iter |
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: 9e0e0c5 | Previous: 3ea0eb1 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.2044725573005497 ns/iter |
2.815450300133586 ns/iter |
0.78 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.1815069147468105 ns/iter |
2.461557354887401 ns/iter |
0.89 |
Regex_Period_Asterisk |
2.190678050268627 ns/iter |
2.812516029448832 ns/iter |
0.78 |
Regex_Group_Period_Asterisk_Group |
2.202267293924286 ns/iter |
2.4618515207525116 ns/iter |
0.89 |
Regex_Period_Plus |
3.1172748382782935 ns/iter |
4.217811481871924 ns/iter |
0.74 |
Regex_Period |
2.802363969862645 ns/iter |
3.866304209684409 ns/iter |
0.72 |
Regex_Caret_Period_Plus_Dollar |
3.0984435790373888 ns/iter |
4.222307255050327 ns/iter |
0.73 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.491576922553786 ns/iter |
3.8767698839170035 ns/iter |
0.64 |
Regex_Caret_Period_Asterisk_Dollar |
2.3859852221235682 ns/iter |
3.1666010670784726 ns/iter |
0.75 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.179889998816823 ns/iter |
2.8142544447335847 ns/iter |
0.77 |
Regex_Caret_X_Hyphen |
5.924876881618523 ns/iter |
7.404720566412962 ns/iter |
0.80 |
Regex_Period_Md_Dollar |
28.62904470648321 ns/iter |
26.84014731669744 ns/iter |
1.07 |
Regex_Caret_Slash_Period_Asterisk |
6.231064591065603 ns/iter |
7.736283785852633 ns/iter |
0.81 |
Regex_Caret_Period_Range_Dollar |
2.5006328829859115 ns/iter |
3.0903573124610033 ns/iter |
0.81 |
Regex_Nested_Backtrack |
37.80152252231032 ns/iter |
37.26578749117522 ns/iter |
1.01 |
JSON_Array_Of_Objects_Unique |
404.3877044018859 ns/iter |
501.989185525233 ns/iter |
0.81 |
JSON_Parse_1 |
5847.115607273832 ns/iter |
5737.5052495355385 ns/iter |
1.02 |
JSON_Parse_Real |
11290.00272787527 ns/iter |
10383.069943540235 ns/iter |
1.09 |
JSON_Parse_Decimal |
11320.706448054143 ns/iter |
10877.358337890471 ns/iter |
1.04 |
JSON_Parse_Schema_ISO_Language |
3690393.34391502 ns/iter |
3717586.170212821 ns/iter |
0.99 |
JSON_Fast_Hash_Helm_Chart_Lock |
61.00983806212537 ns/iter |
79.20033206684612 ns/iter |
0.77 |
JSON_Equality_Helm_Chart_Lock |
171.46732341353024 ns/iter |
168.5782860406928 ns/iter |
1.02 |
JSON_Divisible_By_Decimal |
243.85694639924745 ns/iter |
245.26985987366132 ns/iter |
0.99 |
JSON_String_Equal/10 |
6.235746950031634 ns/iter |
6.333458374490689 ns/iter |
0.98 |
JSON_String_Equal/100 |
6.861784439453666 ns/iter |
6.336051354986864 ns/iter |
1.08 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.9392966259418412 ns/iter |
1.0554743840525587 ns/iter |
0.89 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
10.281763041732361 ns/iter |
12.40639451336056 ns/iter |
0.83 |
JSON_String_Fast_Hash/10 |
2.4960527842453337 ns/iter |
2.815113663647041 ns/iter |
0.89 |
JSON_String_Fast_Hash/100 |
2.4926184483875833 ns/iter |
2.8228639775064024 ns/iter |
0.88 |
JSON_String_Key_Hash/10 |
2.18093485986281 ns/iter |
2.461698560142255 ns/iter |
0.89 |
JSON_String_Key_Hash/100 |
6.537160940427924 ns/iter |
7.732463604785702 ns/iter |
0.85 |
JSON_Object_Defines_Miss_Same_Length |
3.740999202475417 ns/iter |
4.219719986276827 ns/iter |
0.89 |
JSON_Object_Defines_Miss_Too_Small |
3.7392989591227184 ns/iter |
4.219723389406765 ns/iter |
0.89 |
JSON_Object_Defines_Miss_Too_Large |
3.7400630842078075 ns/iter |
4.219700309489887 ns/iter |
0.89 |
Pointer_Object_Traverse |
24.15168355281586 ns/iter |
28.115514709713743 ns/iter |
0.86 |
Pointer_Object_Try_Traverse |
27.896202847852138 ns/iter |
30.646581241558625 ns/iter |
0.91 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
164.3565041411014 ns/iter |
189.6788502281996 ns/iter |
0.87 |
Pointer_Walker_Schema_ISO_Language |
3152727.0950228986 ns/iter |
3109285.847533852 ns/iter |
1.01 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1481688.1779662038 ns/iter |
1429391.965163937 ns/iter |
1.04 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1812307.6051947523 ns/iter |
2227747.821752255 ns/iter |
0.81 |
Pointer_Position_Tracker_Get_Deeply_Nested |
664.3761145043409 ns/iter |
653.0788484190329 ns/iter |
1.02 |
Schema_Frame_WoT_References |
5239519.589552015 ns/iter |
5222698.365672393 ns/iter |
1.00 |
Schema_Frame_OMC_References |
21391805.272728425 ns/iter |
21798446.290319823 ns/iter |
0.98 |
Schema_Frame_OMC_Locations |
19691027.166667633 ns/iter |
20180217.25714334 ns/iter |
0.98 |
Schema_Frame_ISO_Language_Locations |
99879231.9999969 ns/iter |
101405684.16666913 ns/iter |
0.98 |
Schema_Frame_KrakenD_References |
39403115.833332926 ns/iter |
41516787.47058775 ns/iter |
0.95 |
Schema_Frame_KrakenD_Reachable |
595612401.9999151 ns/iter |
613211012.0000789 ns/iter |
0.97 |
Schema_Iterator_ISO_Language |
2984593.5508470857 ns/iter |
3130669.387386915 ns/iter |
0.95 |
Schema_Frame_ISO_Language_Locations_To_JSON |
112318791.80002125 ns/iter |
109238349.66666846 ns/iter |
1.03 |
Schema_Tracker_ISO_Language |
4585283.802631585 ns/iter |
4753980.160000235 ns/iter |
0.96 |
Schema_Tracker_ISO_Language_To_JSON |
19266955.805556387 ns/iter |
17844620.7435901 ns/iter |
1.08 |
Schema_Format_ISO_Language_To_JSON |
104795986.33334793 ns/iter |
109740386.16666348 ns/iter |
0.95 |
Schema_Bundle_Meta_2020_12 |
1700488.6043660846 ns/iter |
1661125.1516592002 ns/iter |
1.02 |
Schema_Frame_Many_Resources_References |
378417016.5000091 ns/iter |
378284083.49997747 ns/iter |
1.00 |
EditorSchema_ForEditor_EmbeddedResources |
13915773.45999849 ns/iter |
14000698.040003954 ns/iter |
0.99 |
URITemplateRouter_Create |
31881.601679102074 ns/iter |
30394.594494710844 ns/iter |
1.05 |
URITemplateRouter_Match |
170.64053319785373 ns/iter |
182.2695086735127 ns/iter |
0.94 |
URITemplateRouter_Match_BasePath |
203.15470929804502 ns/iter |
218.91520521864118 ns/iter |
0.93 |
URITemplateRouterView_Restore |
7812.308972007156 ns/iter |
8811.413272210095 ns/iter |
0.89 |
URITemplateRouterView_Match |
143.02647760206366 ns/iter |
147.95977039654866 ns/iter |
0.97 |
URITemplateRouterView_Match_BasePath |
164.66450736708228 ns/iter |
174.6525820841366 ns/iter |
0.94 |
URITemplateRouterView_Arguments |
472.2147693939146 ns/iter |
468.70341948352126 ns/iter |
1.01 |
JSONL_Parse_Large |
10856076.515626255 ns/iter |
9977867.26388799 ns/iter |
1.09 |
JSONL_Parse_Large_GZIP |
12124648.310344221 ns/iter |
11115076.746032102 ns/iter |
1.09 |
HTML_Build_Table_100000 |
63609671.81817821 ns/iter |
90892325.75000495 ns/iter |
0.70 |
HTML_Render_Table_100000 |
5397920.715385086 ns/iter |
4950092.676258562 ns/iter |
1.09 |
GZIP_Compress_ISO_Language_Set_3_Locations |
34166579.15000201 ns/iter |
||
GZIP_Decompress_ISO_Language_Set_3_Locations |
5209828.985184854 ns/iter |
||
GZIP_Compress_ISO_Language_Set_3_Schema |
1876214.2139036725 ns/iter |
||
GZIP_Decompress_ISO_Language_Set_3_Schema |
379199.263271954 ns/iter |
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: 9e0e0c5 | Previous: 3ea0eb1 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
8.875538799661106 ns/iter |
6.847304464287163 ns/iter |
1.30 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
8.81498437499977 ns/iter |
6.842957142857082 ns/iter |
1.29 |
Regex_Period_Asterisk |
8.831895496286752 ns/iter |
6.838037499999165 ns/iter |
1.29 |
Regex_Group_Period_Asterisk_Group |
8.819982549910227 ns/iter |
6.839375000000457 ns/iter |
1.29 |
Regex_Period_Plus |
11.337525000001849 ns/iter |
8.760871651785708 ns/iter |
1.29 |
Regex_Period |
11.313910937499116 ns/iter |
8.74290531811163 ns/iter |
1.29 |
Regex_Caret_Period_Plus_Dollar |
11.289968749998991 ns/iter |
8.740771835978963 ns/iter |
1.29 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
11.304334374997893 ns/iter |
8.745550407388755 ns/iter |
1.29 |
Regex_Caret_Period_Asterisk_Dollar |
8.88819103174736 ns/iter |
6.833362499999598 ns/iter |
1.30 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
8.84999326406476 ns/iter |
6.833774999999979 ns/iter |
1.30 |
Regex_Caret_X_Hyphen |
13.791161992004094 ns/iter |
10.660603125000279 ns/iter |
1.29 |
Regex_Period_Md_Dollar |
41.177332247915615 ns/iter |
31.577254464291318 ns/iter |
1.30 |
Regex_Caret_Slash_Period_Asterisk |
13.081005357142724 ns/iter |
10.113551740564708 ns/iter |
1.29 |
Regex_Caret_Period_Range_Dollar |
11.361873437500947 ns/iter |
8.739822282413716 ns/iter |
1.30 |
Regex_Nested_Backtrack |
50.650866071423806 ns/iter |
38.96656808036271 ns/iter |
1.30 |
JSON_Array_Of_Objects_Unique |
498.23560000004363 ns/iter |
376.5906808035981 ns/iter |
1.32 |
JSON_Parse_1 |
7656.8069196422275 ns/iter |
5851.164999999128 ns/iter |
1.31 |
JSON_Parse_Real |
13841.267226483535 ns/iter |
10627.684251409932 ns/iter |
1.30 |
JSON_Parse_Decimal |
14978.098214284735 ns/iter |
11159.625000001228 ns/iter |
1.34 |
JSON_Parse_Schema_ISO_Language |
6440455.357142533 ns/iter |
5287257.1428557485 ns/iter |
1.22 |
JSON_Fast_Hash_Helm_Chart_Lock |
60.16274107143513 ns/iter |
52.630440906921635 ns/iter |
1.14 |
JSON_Equality_Helm_Chart_Lock |
285.08300836129433 ns/iter |
227.57593750000638 ns/iter |
1.25 |
JSON_Divisible_By_Decimal |
258.3475316226668 ns/iter |
200.31922543222464 ns/iter |
1.29 |
JSON_String_Equal/10 |
11.689158928573663 ns/iter |
8.776124960820038 ns/iter |
1.33 |
JSON_String_Equal/100 |
13.09581607142718 ns/iter |
10.151110937499652 ns/iter |
1.29 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
1.8420538409304832 ns/iter |
1.6579114073605903 ns/iter |
1.11 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
11.304470312502701 ns/iter |
8.797645089287139 ns/iter |
1.28 |
JSON_String_Fast_Hash/10 |
3.2835628512794406 ns/iter |
2.7399214930893625 ns/iter |
1.20 |
JSON_String_Fast_Hash/100 |
3.2694416013050263 ns/iter |
2.7358225000000402 ns/iter |
1.20 |
JSON_String_Key_Hash/10 |
4.596008024429614 ns/iter |
3.0195767857138986 ns/iter |
1.52 |
JSON_String_Key_Hash/100 |
16.998717296886234 ns/iter |
13.293703571426768 ns/iter |
1.28 |
JSON_Object_Defines_Miss_Same_Length |
3.8833225446425046 ns/iter |
3.94263963581648 ns/iter |
0.98 |
JSON_Object_Defines_Miss_Too_Small |
5.120176000000356 ns/iter |
3.0371357142848456 ns/iter |
1.69 |
JSON_Object_Defines_Miss_Too_Large |
3.898533482142546 ns/iter |
3.016727678571434 ns/iter |
1.29 |
Pointer_Object_Traverse |
42.0381732981666 ns/iter |
32.527945820747625 ns/iter |
1.29 |
Pointer_Object_Try_Traverse |
54.07436999998936 ns/iter |
41.19584564102014 ns/iter |
1.31 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
151.27022321428691 ns/iter |
120.44789285718187 ns/iter |
1.26 |
Pointer_Walker_Schema_ISO_Language |
13393380.000002254 ns/iter |
10309751.999999814 ns/iter |
1.30 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
2021883.9285714042 ns/iter |
1525661.6883113105 ns/iter |
1.33 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
2936429.661016811 ns/iter |
2632665.1515152017 ns/iter |
1.12 |
Pointer_Position_Tracker_Get_Deeply_Nested |
627.423549107117 ns/iter |
482.5524107143256 ns/iter |
1.30 |
Schema_Frame_WoT_References |
10121465.625001492 ns/iter |
7858756.666665714 ns/iter |
1.29 |
Schema_Frame_OMC_References |
47531246.66666129 ns/iter |
34413826.31578898 ns/iter |
1.38 |
Schema_Frame_OMC_Locations |
42718047.058823526 ns/iter |
32585223.809530277 ns/iter |
1.31 |
Schema_Frame_ISO_Language_Locations |
212359933.3333459 ns/iter |
163626924.99996 ns/iter |
1.30 |
Schema_Frame_KrakenD_References |
96870942.8571596 ns/iter |
73095444.44443518 ns/iter |
1.33 |
Schema_Frame_KrakenD_Reachable |
562542099.9999733 ns/iter |
404786500.00011384 ns/iter |
1.39 |
Schema_Iterator_ISO_Language |
7118237.777778328 ns/iter |
5164798.9999992205 ns/iter |
1.38 |
Schema_Frame_ISO_Language_Locations_To_JSON |
312882300.0000693 ns/iter |
246354966.66671014 ns/iter |
1.27 |
Schema_Tracker_ISO_Language |
10358624.000000417 ns/iter |
7895810.000000994 ns/iter |
1.31 |
Schema_Tracker_ISO_Language_To_JSON |
51534619.99998399 ns/iter |
38805447.36842383 ns/iter |
1.33 |
Schema_Format_ISO_Language_To_JSON |
211921033.33320725 ns/iter |
156220100.0000414 ns/iter |
1.36 |
Schema_Bundle_Meta_2020_12 |
2848329.3172660316 ns/iter |
2221146.2500024484 ns/iter |
1.28 |
Schema_Frame_Many_Resources_References |
1511654000.000135 ns/iter |
1154473499.9999945 ns/iter |
1.31 |
EditorSchema_ForEditor_EmbeddedResources |
30938579.166663278 ns/iter |
23275183.333324395 ns/iter |
1.33 |
URITemplateRouter_Create |
37076.34767429734 ns/iter |
28306.722083213488 ns/iter |
1.31 |
URITemplateRouter_Match |
217.58843749999815 ns/iter |
174.35727953288387 ns/iter |
1.25 |
URITemplateRouter_Match_BasePath |
253.25614285715605 ns/iter |
197.34601762020662 ns/iter |
1.28 |
URITemplateRouterView_Restore |
23195.22215154163 ns/iter |
17576.413681338672 ns/iter |
1.32 |
URITemplateRouterView_Match |
157.52966517855577 ns/iter |
117.7694107142559 ns/iter |
1.34 |
URITemplateRouterView_Match_BasePath |
185.37636476569728 ns/iter |
137.21973940980197 ns/iter |
1.35 |
URITemplateRouterView_Arguments |
446.1034497045058 ns/iter |
348.4956029472743 ns/iter |
1.28 |
JSONL_Parse_Large |
27313773.07692093 ns/iter |
20712664.705884516 ns/iter |
1.32 |
JSONL_Parse_Large_GZIP |
26916699.999998987 ns/iter |
20464353.124999944 ns/iter |
1.32 |
HTML_Build_Table_100000 |
92139499.99999775 ns/iter |
72785927.27272388 ns/iter |
1.27 |
HTML_Render_Table_100000 |
8231850.000000426 ns/iter |
6656718.888888868 ns/iter |
1.24 |
GZIP_Compress_ISO_Language_Set_3_Locations |
43743500.000005044 ns/iter |
||
GZIP_Decompress_ISO_Language_Set_3_Locations |
11596156.250000434 ns/iter |
||
GZIP_Compress_ISO_Language_Set_3_Schema |
2530802.1428575753 ns/iter |
||
GZIP_Decompress_ISO_Language_Set_3_Schema |
741663.8392856763 ns/iter |
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: 9e0e0c5 | Previous: 3ea0eb1 | Ratio |
|---|---|---|---|
GZIP_Compress_ISO_Language_Set_3_Locations |
41298518.529415295 ns/iter |
||
GZIP_Decompress_ISO_Language_Set_3_Locations |
4914963.013984593 ns/iter |
||
GZIP_Compress_ISO_Language_Set_3_Schema |
2342783.117056603 ns/iter |
||
GZIP_Decompress_ISO_Language_Set_3_Schema |
297204.62322059664 ns/iter |
||
HTML_Build_Table_100000 |
67897773.30000106 ns/iter |
68188369.09999391 ns/iter |
1.00 |
HTML_Render_Table_100000 |
2390935.1003460283 ns/iter |
5042811.7810221985 ns/iter |
0.47 |
JSONL_Parse_Large |
12707938.109087989 ns/iter |
12364365.228067024 ns/iter |
1.03 |
JSONL_Parse_Large_GZIP |
13768215.843137844 ns/iter |
13931860.921569321 ns/iter |
0.99 |
URITemplateRouter_Create |
29390.79400528995 ns/iter |
30345.07107695082 ns/iter |
0.97 |
URITemplateRouter_Match |
166.9857110870186 ns/iter |
181.63510008448782 ns/iter |
0.92 |
URITemplateRouter_Match_BasePath |
196.12852300504198 ns/iter |
210.4456954611485 ns/iter |
0.93 |
URITemplateRouterView_Restore |
8707.56088873562 ns/iter |
8727.80798158344 ns/iter |
1.00 |
URITemplateRouterView_Match |
135.56595881417152 ns/iter |
135.82557821792975 ns/iter |
1.00 |
URITemplateRouterView_Match_BasePath |
154.94805626298688 ns/iter |
160.21964886416353 ns/iter |
0.97 |
URITemplateRouterView_Arguments |
458.5089706311125 ns/iter |
457.115172710319 ns/iter |
1.00 |
EditorSchema_ForEditor_EmbeddedResources |
14352028.999972353 ns/iter |
14410437.312524967 ns/iter |
1.00 |
Schema_Frame_WoT_References |
5566038.412697462 ns/iter |
5528842.40476177 ns/iter |
1.01 |
Schema_Frame_OMC_References |
24584560.17241368 ns/iter |
23080186.33333025 ns/iter |
1.07 |
Schema_Frame_OMC_Locations |
23208132.870965324 ns/iter |
21445537.878786456 ns/iter |
1.08 |
Schema_Frame_ISO_Language_Locations |
107678991.83334368 ns/iter |
109595409.66666736 ns/iter |
0.98 |
Schema_Frame_KrakenD_References |
46276884.79999961 ns/iter |
43945506.87500498 ns/iter |
1.05 |
Schema_Frame_KrakenD_Reachable |
602608613.0000294 ns/iter |
629275949.9999647 ns/iter |
0.96 |
Schema_Iterator_ISO_Language |
3564516.8497655117 ns/iter |
3166032.420813898 ns/iter |
1.13 |
Schema_Frame_ISO_Language_Locations_To_JSON |
245093721.33335698 ns/iter |
233146262.66665074 ns/iter |
1.05 |
Schema_Tracker_ISO_Language |
4545036.65359345 ns/iter |
4485215.961038536 ns/iter |
1.01 |
Schema_Tracker_ISO_Language_To_JSON |
22624667.45161228 ns/iter |
22165341.37500048 ns/iter |
1.02 |
Schema_Format_ISO_Language_To_JSON |
117543469.33332728 ns/iter |
110398661.49997123 ns/iter |
1.06 |
Schema_Bundle_Meta_2020_12 |
1777996.6582226355 ns/iter |
1784259.9822327932 ns/iter |
1.00 |
Schema_Frame_Many_Resources_References |
406180839.0000579 ns/iter |
388095124.4999551 ns/iter |
1.05 |
Pointer_Object_Traverse |
26.163318721289038 ns/iter |
26.664663722308507 ns/iter |
0.98 |
Pointer_Object_Try_Traverse |
23.036036972706384 ns/iter |
25.456053699993326 ns/iter |
0.90 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
136.97279279190343 ns/iter |
151.38873313346863 ns/iter |
0.90 |
Pointer_Walker_Schema_ISO_Language |
3719043.206703706 ns/iter |
3517765.87192187 ns/iter |
1.06 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1508110.8924727798 ns/iter |
1512227.8146548225 ns/iter |
1.00 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1711950.3398536216 ns/iter |
1708974.9558822091 ns/iter |
1.00 |
Pointer_Position_Tracker_Get_Deeply_Nested |
534.5736757323533 ns/iter |
468.6953085642986 ns/iter |
1.14 |
JSON_Array_Of_Objects_Unique |
429.7012688210185 ns/iter |
436.4113639493703 ns/iter |
0.98 |
JSON_Parse_1 |
7639.468988398223 ns/iter |
7589.597748572826 ns/iter |
1.01 |
JSON_Parse_Real |
11701.048479389021 ns/iter |
11734.63346845251 ns/iter |
1.00 |
JSON_Parse_Decimal |
16296.212212705894 ns/iter |
16289.38699992873 ns/iter |
1.00 |
JSON_Parse_Schema_ISO_Language |
4633340.479999788 ns/iter |
4525846.961039907 ns/iter |
1.02 |
JSON_Fast_Hash_Helm_Chart_Lock |
71.95560564403716 ns/iter |
62.75807225092551 ns/iter |
1.15 |
JSON_Equality_Helm_Chart_Lock |
171.3320833782508 ns/iter |
173.95764779438244 ns/iter |
0.98 |
JSON_Divisible_By_Decimal |
232.26995371834596 ns/iter |
232.92921020475967 ns/iter |
1.00 |
JSON_String_Equal/10 |
6.465884448028617 ns/iter |
6.722428857891553 ns/iter |
0.96 |
JSON_String_Equal/100 |
7.179891677755342 ns/iter |
7.186196413955959 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7120471818686124 ns/iter |
0.7115294443545107 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
21.988010012683965 ns/iter |
21.936190866419526 ns/iter |
1.00 |
JSON_String_Fast_Hash/10 |
1.7589722739303382 ns/iter |
1.7588711835550335 ns/iter |
1.00 |
JSON_String_Fast_Hash/100 |
1.75968965850391 ns/iter |
1.7593741643810492 ns/iter |
1.00 |
JSON_String_Key_Hash/10 |
1.0856147470470037 ns/iter |
1.083911439619537 ns/iter |
1.00 |
JSON_String_Key_Hash/100 |
14.760657499776022 ns/iter |
14.756508654155704 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Same_Length |
3.906306677728323 ns/iter |
3.8726957403325803 ns/iter |
1.01 |
JSON_Object_Defines_Miss_Too_Small |
4.2235112748648875 ns/iter |
4.2239588296006945 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Large |
3.534676247151092 ns/iter |
3.517216899894372 ns/iter |
1.00 |
Regex_Lower_S_Or_Upper_S_Asterisk |
0.7046441595737053 ns/iter |
0.7037827256282021 ns/iter |
1.00 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
0.7039440643118491 ns/iter |
0.7036097597281504 ns/iter |
1.00 |
Regex_Period_Asterisk |
1.0556263634307432 ns/iter |
1.0553807580132517 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
1.0557390456529816 ns/iter |
1.0557893020716664 ns/iter |
1.00 |
Regex_Period_Plus |
0.7036567234796213 ns/iter |
0.7036824426853043 ns/iter |
1.00 |
Regex_Period |
0.7035261994069038 ns/iter |
0.7038987456618534 ns/iter |
1.00 |
Regex_Caret_Period_Plus_Dollar |
1.0555493179470252 ns/iter |
1.0586400516039536 ns/iter |
1.00 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
1.0560032759567355 ns/iter |
1.055559773303686 ns/iter |
1.00 |
Regex_Caret_Period_Asterisk_Dollar |
0.7031739933155546 ns/iter |
0.7036694150720892 ns/iter |
1.00 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
0.7037279947222058 ns/iter |
0.7043073630098549 ns/iter |
1.00 |
Regex_Caret_X_Hyphen |
4.218398413510007 ns/iter |
3.866805881784364 ns/iter |
1.09 |
Regex_Period_Md_Dollar |
40.43946588310673 ns/iter |
33.77610417136875 ns/iter |
1.20 |
Regex_Caret_Slash_Period_Asterisk |
4.575280916593484 ns/iter |
4.570664181403832 ns/iter |
1.00 |
Regex_Caret_Period_Range_Dollar |
0.8485096106056871 ns/iter |
0.8390179627262704 ns/iter |
1.01 |
Regex_Nested_Backtrack |
44.845146765402994 ns/iter |
40.09232131910155 ns/iter |
1.12 |
This comment was automatically generated by workflow using github-action-benchmark.
Signed-off-by: Juan Cruz Viotti jv@jviotti.com