Add JSON-LD related micro benchmarks#2617
Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
🤖 Augment PR SummarySummary: Adds JSON-LD micro-benchmarks to measure annotation-map setup and instance materialization. Changes:
Technical notes: Uses 🤖 Was this summary useful? React with 👍 or 👎 |
| static constexpr std::size_t authors_per_member{3}; | ||
| static constexpr std::size_t keywords_per_member{3}; | ||
| static constexpr std::size_t identifiers_per_member{3}; | ||
| static constexpr std::size_t annotations_per_member{ |
There was a problem hiding this comment.
benchmark/jsonld.cc:20 — annotations_per_member relies on a hard-coded base 19, which is easy to get out of sync with populate_member; if it drifts, total_annotation_count and the size asserts will fail unexpectedly.
Severity: low
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
There was a problem hiding this comment.
Benchmark (linux/gcc)
Details
| Benchmark suite | Current: a3eea7c | Previous: 2091647 | Ratio |
|---|---|---|---|
JOSE_VerifySignature_RS256 |
22052.304703279966 ns/iter |
18880.145819215602 ns/iter |
1.17 |
JOSE_VerifySignature_ES512 |
576195.4084158804 ns/iter |
420337.2376950921 ns/iter |
1.37 |
GZIP_Compress_ISO_Language_Set_3_Locations |
36575032.89473664 ns/iter |
23471951.266666718 ns/iter |
1.56 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
4314410.69938682 ns/iter |
3173276.117647119 ns/iter |
1.36 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2029024.0927536523 ns/iter |
1604214.7048054778 ns/iter |
1.26 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
380749.5586319672 ns/iter |
299884.5815147688 ns/iter |
1.27 |
HTML_Build_Table_100000 |
59815995.833332635 ns/iter |
40741236.17646939 ns/iter |
1.47 |
HTML_Render_Table_100000 |
1843607.4289474236 ns/iter |
2665627.5095057483 ns/iter |
0.69 |
JSONLD_Catalog_Annotation_Map_Populate |
13367582.509435775 ns/iter |
||
JSONLD_Catalog_Materialize |
17410273.90476174 ns/iter |
||
JSONL_Parse_Large |
13347695.673078218 ns/iter |
9875843.25352046 ns/iter |
1.35 |
JSONL_Parse_Large_GZIP |
14767984.340425484 ns/iter |
11107244.603174023 ns/iter |
1.33 |
URITemplateRouter_Create |
30353.203538292382 ns/iter |
23507.763053157683 ns/iter |
1.29 |
URITemplateRouter_Match |
157.98986495612613 ns/iter |
137.00584795321575 ns/iter |
1.15 |
URITemplateRouter_Match_BasePath |
189.471713223724 ns/iter |
158.44536345677722 ns/iter |
1.20 |
URITemplateRouterView_Restore |
8374.212247471312 ns/iter |
2900.843630930153 ns/iter |
2.89 |
URITemplateRouterView_Match |
124.41562089822408 ns/iter |
97.33459121667346 ns/iter |
1.28 |
URITemplateRouterView_Match_BasePath |
141.73478532521648 ns/iter |
111.58964627443714 ns/iter |
1.27 |
URITemplateRouterView_Arguments |
467.41111255785955 ns/iter |
387.676135938653 ns/iter |
1.21 |
Pointer_Object_Traverse |
30.310733703684306 ns/iter |
24.28058743380627 ns/iter |
1.25 |
Pointer_Object_Try_Traverse |
23.044475081271404 ns/iter |
18.79711354695567 ns/iter |
1.23 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
156.2249796168009 ns/iter |
135.63107051608208 ns/iter |
1.15 |
Pointer_Walker_Schema_ISO_Language |
2599709.591077906 ns/iter |
2091134.5135134312 ns/iter |
1.24 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1876765.3804346814 ns/iter |
1614362.1958526364 ns/iter |
1.16 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1759333.2853536913 ns/iter |
1540482.0263157897 ns/iter |
1.14 |
Pointer_Position_Tracker_Get_Deeply_Nested |
396.11465105088035 ns/iter |
420.0005830579193 ns/iter |
0.94 |
JSON_Array_Of_Objects_Unique |
461.15858601585916 ns/iter |
359.23580961805374 ns/iter |
1.28 |
JSON_Parse_1 |
9734.863218838293 ns/iter |
7505.070013125043 ns/iter |
1.30 |
JSON_Parse_Real |
7697.288396091714 ns/iter |
5873.402595009197 ns/iter |
1.31 |
JSON_Parse_Decimal |
12558.552307720332 ns/iter |
8283.341853677008 ns/iter |
1.52 |
JSON_Parse_Schema_ISO_Language |
6433665.302752327 ns/iter |
5133371.583941096 ns/iter |
1.25 |
JSON_Parse_Integer |
5619.215960255321 ns/iter |
4355.045435590304 ns/iter |
1.29 |
JSON_Parse_String_NonSSO_Plain |
12236.319394816046 ns/iter |
8979.704444701892 ns/iter |
1.36 |
JSON_Parse_String_SSO_Plain |
4836.413320240087 ns/iter |
3723.7458854964884 ns/iter |
1.30 |
JSON_Parse_String_Escape_Heavy |
25640.66040912266 ns/iter |
18987.83573448041 ns/iter |
1.35 |
JSON_Parse_Object_Short_Keys |
13347.043667289261 ns/iter |
10354.983206218747 ns/iter |
1.29 |
JSON_Parse_Object_Scalar_Properties |
6880.46171668558 ns/iter |
5352.114030132888 ns/iter |
1.29 |
JSON_Parse_Object_Array_Properties |
11794.000202070323 ns/iter |
8834.346275701893 ns/iter |
1.34 |
JSON_Parse_Object_Object_Properties |
11973.858305965838 ns/iter |
8991.08964266401 ns/iter |
1.33 |
JSON_Parse_Nested_Containers |
97588.03830617723 ns/iter |
77069.05201049257 ns/iter |
1.27 |
JSON_From_String_Copy |
18.234172961591156 ns/iter |
15.798179542866166 ns/iter |
1.15 |
JSON_From_String_Temporary |
15.044884586441365 ns/iter |
12.876488265450325 ns/iter |
1.17 |
JSON_Number_To_Double |
22.141143249293535 ns/iter |
19.656978533626486 ns/iter |
1.13 |
JSON_Object_At_Last_Key/8 |
3.751427137251083 ns/iter |
4.233996941246058 ns/iter |
0.89 |
JSON_Object_At_Last_Key/32 |
11.869109441225293 ns/iter |
11.395790974599302 ns/iter |
1.04 |
JSON_Object_At_Last_Key/128 |
48.838379592971464 ns/iter |
43.749919838791804 ns/iter |
1.12 |
JSON_Object_At_Last_Key/512 |
356.4612110881055 ns/iter |
180.85772977698284 ns/iter |
1.97 |
JSON_Fast_Hash_Helm_Chart_Lock |
87.28633280908211 ns/iter |
60.99991940802792 ns/iter |
1.43 |
JSON_Equality_Helm_Chart_Lock |
155.00339385223765 ns/iter |
132.84410434573815 ns/iter |
1.17 |
JSON_Divisible_By_Decimal |
240.6888821713364 ns/iter |
205.07324659007503 ns/iter |
1.17 |
JSON_String_Equal/10 |
5.707537980591824 ns/iter |
5.152126616445466 ns/iter |
1.11 |
JSON_String_Equal/100 |
6.314428474167769 ns/iter |
6.267185082090913 ns/iter |
1.01 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.7571810404634172 ns/iter |
0.8050526296010462 ns/iter |
0.94 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
25.1925570508801 ns/iter |
14.83643595889694 ns/iter |
1.70 |
JSON_String_Fast_Hash/10 |
2.571696343509964 ns/iter |
2.9049969771244895 ns/iter |
0.89 |
JSON_String_Fast_Hash/100 |
2.5705843240634465 ns/iter |
2.9039448139383257 ns/iter |
0.89 |
JSON_String_Key_Hash/10 |
1.56127428351012 ns/iter |
1.1197659134108613 ns/iter |
1.39 |
JSON_String_Key_Hash/100 |
12.44330695047032 ns/iter |
11.214915208374475 ns/iter |
1.11 |
JSON_Object_Defines_Miss_Same_Length |
3.129549832618708 ns/iter |
2.553776381266996 ns/iter |
1.23 |
JSON_Object_Defines_Miss_Too_Small |
3.129521935274228 ns/iter |
2.8190915829907355 ns/iter |
1.11 |
JSON_Object_Defines_Miss_Too_Large |
3.296627656412444 ns/iter |
2.7985250176548044 ns/iter |
1.18 |
Regex_Lower_S_Or_Upper_S_Asterisk |
0.9349775168530298 ns/iter |
0.845755713494456 ns/iter |
1.11 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
0.6236253704494708 ns/iter |
1.1186794392710282 ns/iter |
0.56 |
Regex_Period_Asterisk |
0.9361219835580854 ns/iter |
1.1198541392990133 ns/iter |
0.84 |
Regex_Group_Period_Asterisk_Group |
0.6247733741579455 ns/iter |
0.8443831675130161 ns/iter |
0.74 |
Regex_Period_Plus |
0.9449676318487256 ns/iter |
0.8439053987591916 ns/iter |
1.12 |
Regex_Period |
0.6239178155121525 ns/iter |
1.1190054562179022 ns/iter |
0.56 |
Regex_Caret_Period_Plus_Dollar |
0.9402226336168411 ns/iter |
1.1197973384368314 ns/iter |
0.84 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
0.6238544935497945 ns/iter |
0.844270802477764 ns/iter |
0.74 |
Regex_Caret_Period_Asterisk_Dollar |
0.9347543507716193 ns/iter |
0.8439444420907517 ns/iter |
1.11 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
0.6230657029680958 ns/iter |
1.1198890225195879 ns/iter |
0.56 |
Regex_Caret_X_Hyphen |
4.3876628651379495 ns/iter |
3.085298346391086 ns/iter |
1.42 |
Regex_Period_Md_Dollar |
30.3431482543835 ns/iter |
16.135423546699563 ns/iter |
1.88 |
Regex_Caret_Slash_Period_Asterisk |
4.6692626022360395 ns/iter |
3.362557886333429 ns/iter |
1.39 |
Regex_Caret_Period_Range_Dollar |
1.2459262478191953 ns/iter |
1.6801326337054854 ns/iter |
0.74 |
Regex_Nested_Backtrack |
38.48034586052472 ns/iter |
31.753346863356192 ns/iter |
1.21 |
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: a3eea7c | Previous: 2091647 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.125673039312163 ns/iter |
2.189147745466061 ns/iter |
0.97 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.0761468803429373 ns/iter |
2.235271882278112 ns/iter |
0.93 |
Regex_Period_Asterisk |
2.3789378042189258 ns/iter |
2.196986152631681 ns/iter |
1.08 |
Regex_Group_Period_Asterisk_Group |
2.4073998587350753 ns/iter |
2.1925022122214055 ns/iter |
1.10 |
Regex_Period_Plus |
2.3977895240207228 ns/iter |
2.2229200150650708 ns/iter |
1.08 |
Regex_Period |
2.3882220869395407 ns/iter |
2.4917524067172465 ns/iter |
0.96 |
Regex_Caret_Period_Plus_Dollar |
2.67167007225033 ns/iter |
2.4922067882334944 ns/iter |
1.07 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.6961870623515405 ns/iter |
2.2378031336401727 ns/iter |
1.20 |
Regex_Caret_Period_Asterisk_Dollar |
2.1033572911524714 ns/iter |
2.1900069084789484 ns/iter |
0.96 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.086930251450482 ns/iter |
2.2137331549466848 ns/iter |
0.94 |
Regex_Caret_X_Hyphen |
4.702225346049423 ns/iter |
5.62539956856921 ns/iter |
0.84 |
Regex_Period_Md_Dollar |
19.714753829131222 ns/iter |
27.243242225206103 ns/iter |
0.72 |
Regex_Caret_Slash_Period_Asterisk |
4.455930696717521 ns/iter |
5.601426582348638 ns/iter |
0.80 |
Regex_Caret_Period_Range_Dollar |
2.767655486653574 ns/iter |
3.11361312353425 ns/iter |
0.89 |
Regex_Nested_Backtrack |
32.57111790550046 ns/iter |
38.28738714343511 ns/iter |
0.85 |
JSON_Array_Of_Objects_Unique |
353.7670092782416 ns/iter |
469.9916462533097 ns/iter |
0.75 |
JSON_Parse_1 |
4189.786115932707 ns/iter |
4909.816069094318 ns/iter |
0.85 |
JSON_Parse_Real |
4426.408288306475 ns/iter |
5243.55882638951 ns/iter |
0.84 |
JSON_Parse_Decimal |
6532.710903846967 ns/iter |
7635.592905368363 ns/iter |
0.86 |
JSON_Parse_Schema_ISO_Language |
2828302.967213206 ns/iter |
3490342.787128526 ns/iter |
0.81 |
JSON_Parse_Integer |
3047.699290688101 ns/iter |
3802.273537365428 ns/iter |
0.80 |
JSON_Parse_String_NonSSO_Plain |
4041.008619785326 ns/iter |
4909.02177086427 ns/iter |
0.82 |
JSON_Parse_String_SSO_Plain |
2198.3093126316508 ns/iter |
2679.2035746223996 ns/iter |
0.82 |
JSON_Parse_String_Escape_Heavy |
13124.345175438766 ns/iter |
14411.950802882346 ns/iter |
0.91 |
JSON_Parse_Object_Short_Keys |
6531.542432959279 ns/iter |
10658.923211487976 ns/iter |
0.61 |
JSON_Parse_Object_Scalar_Properties |
3388.469027915921 ns/iter |
4163.881680456383 ns/iter |
0.81 |
JSON_Parse_Object_Array_Properties |
4781.385691536849 ns/iter |
5674.022939567503 ns/iter |
0.84 |
JSON_Parse_Object_Object_Properties |
4580.502636237941 ns/iter |
5713.017485578538 ns/iter |
0.80 |
JSON_Parse_Nested_Containers |
38049.70094075425 ns/iter |
45543.225829263014 ns/iter |
0.84 |
JSON_From_String_Copy |
16.812023167543963 ns/iter |
19.334322360533836 ns/iter |
0.87 |
JSON_From_String_Temporary |
14.70794422299048 ns/iter |
17.14784264528742 ns/iter |
0.86 |
JSON_Number_To_Double |
20.136812218817724 ns/iter |
22.632688111220425 ns/iter |
0.89 |
JSON_Object_At_Last_Key/8 |
4.121112535902017 ns/iter |
3.8126213250863863 ns/iter |
1.08 |
JSON_Object_At_Last_Key/32 |
11.884037500971457 ns/iter |
12.480965348447853 ns/iter |
0.95 |
JSON_Object_At_Last_Key/128 |
45.819210029220635 ns/iter |
49.25157412339774 ns/iter |
0.93 |
JSON_Object_At_Last_Key/512 |
191.2980259797007 ns/iter |
400.9239163137827 ns/iter |
0.48 |
JSON_Fast_Hash_Helm_Chart_Lock |
50.40146002757938 ns/iter |
56.989671702158 ns/iter |
0.88 |
JSON_Equality_Helm_Chart_Lock |
135.54353408018483 ns/iter |
167.82780402196613 ns/iter |
0.81 |
JSON_Divisible_By_Decimal |
211.844964392245 ns/iter |
251.41407221483522 ns/iter |
0.84 |
JSON_String_Equal/10 |
4.402810102801551 ns/iter |
5.919857127392508 ns/iter |
0.74 |
JSON_String_Equal/100 |
5.688317113159917 ns/iter |
6.545177198989227 ns/iter |
0.87 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.601551037684994 ns/iter |
0.9416275530691767 ns/iter |
0.64 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
8.697279927437402 ns/iter |
10.642829288422773 ns/iter |
0.82 |
JSON_String_Fast_Hash/10 |
2.063856918161872 ns/iter |
2.491963810589855 ns/iter |
0.83 |
JSON_String_Fast_Hash/100 |
2.065319535974821 ns/iter |
2.49220260805811 ns/iter |
0.83 |
JSON_String_Key_Hash/10 |
1.7974088537288888 ns/iter |
2.1810654617358805 ns/iter |
0.82 |
JSON_String_Key_Hash/100 |
6.2803576358475555 ns/iter |
6.536279461158068 ns/iter |
0.96 |
JSON_Object_Defines_Miss_Same_Length |
3.58887746320054 ns/iter |
3.134350736778891 ns/iter |
1.15 |
JSON_Object_Defines_Miss_Too_Small |
3.488623792326534 ns/iter |
3.430117221963514 ns/iter |
1.02 |
JSON_Object_Defines_Miss_Too_Large |
4.365103513007025 ns/iter |
2.8646214828131473 ns/iter |
1.52 |
Pointer_Object_Traverse |
20.545845786286517 ns/iter |
29.141166035172617 ns/iter |
0.71 |
Pointer_Object_Try_Traverse |
24.676276662175226 ns/iter |
31.127880383692467 ns/iter |
0.79 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
114.61972746677915 ns/iter |
199.643367918412 ns/iter |
0.57 |
Pointer_Walker_Schema_ISO_Language |
2266434.3876219927 ns/iter |
2651595.86692037 ns/iter |
0.85 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
973537.6027776964 ns/iter |
1215338.477112642 ns/iter |
0.80 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
1461539.2725366708 ns/iter |
1620197.6036864826 ns/iter |
0.90 |
Pointer_Position_Tracker_Get_Deeply_Nested |
651.1107241975734 ns/iter |
627.4446730386649 ns/iter |
1.04 |
URITemplateRouter_Create |
26230.872797926953 ns/iter |
33521.69141332257 ns/iter |
0.78 |
URITemplateRouter_Match |
156.27608941275844 ns/iter |
182.75045951385673 ns/iter |
0.86 |
URITemplateRouter_Match_BasePath |
177.07718207398315 ns/iter |
211.2724365979377 ns/iter |
0.84 |
URITemplateRouterView_Restore |
3246.0876450846995 ns/iter |
8635.95542514709 ns/iter |
0.38 |
URITemplateRouterView_Match |
145.60667421071213 ns/iter |
142.83896876100664 ns/iter |
1.02 |
URITemplateRouterView_Match_BasePath |
168.27684771193074 ns/iter |
163.0751285788769 ns/iter |
1.03 |
URITemplateRouterView_Arguments |
401.40476582214706 ns/iter |
434.1542272457843 ns/iter |
0.92 |
JSONL_Parse_Large |
8090631.058139003 ns/iter |
9778497.44444528 ns/iter |
0.83 |
JSONL_Parse_Large_GZIP |
9452132.472972607 ns/iter |
11336619.435483852 ns/iter |
0.83 |
JSONLD_Catalog_Annotation_Map_Populate |
9944623.299999682 ns/iter |
||
JSONLD_Catalog_Materialize |
11416413.262294866 ns/iter |
||
HTML_Build_Table_100000 |
70374054.59999491 ns/iter |
69517234.40000705 ns/iter |
1.01 |
HTML_Render_Table_100000 |
5337632.137615059 ns/iter |
5265382.039370227 ns/iter |
1.01 |
GZIP_Compress_ISO_Language_Set_3_Locations |
24826194.7142875 ns/iter |
33488322.2380995 ns/iter |
0.74 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
3357238.728571723 ns/iter |
4264664.126506305 ns/iter |
0.79 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1666761.7838478119 ns/iter |
1884962.367567651 ns/iter |
0.88 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
302223.8555084445 ns/iter |
355001.7769308541 ns/iter |
0.85 |
JOSE_VerifySignature_RS256 |
43936.9774454988 ns/iter |
56744.55847313073 ns/iter |
0.77 |
JOSE_VerifySignature_ES512 |
1887374.6334230662 ns/iter |
2445496.0034721773 ns/iter |
0.77 |
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: a3eea7c | Previous: c30b26a | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.0939501474483704 ns/iter |
1.5792249909364349 ns/iter |
1.33 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.9773364102854163 ns/iter |
1.5736354392243306 ns/iter |
1.26 |
Regex_Period_Asterisk |
1.7223533787057543 ns/iter |
1.604891260661497 ns/iter |
1.07 |
Regex_Group_Period_Asterisk_Group |
1.7741287256308154 ns/iter |
1.5672955194430616 ns/iter |
1.13 |
Regex_Period_Plus |
2.515679309460192 ns/iter |
1.8938407730336309 ns/iter |
1.33 |
Regex_Period |
2.4728719475034007 ns/iter |
1.8851141475026976 ns/iter |
1.31 |
Regex_Caret_Period_Plus_Dollar |
2.5059008192216634 ns/iter |
1.8829624091517188 ns/iter |
1.33 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.5555179083916597 ns/iter |
2.0599116578433656 ns/iter |
1.24 |
Regex_Caret_Period_Asterisk_Dollar |
2.1239915156394193 ns/iter |
1.5743757752124994 ns/iter |
1.35 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.118418087553219 ns/iter |
1.5730056030696222 ns/iter |
1.35 |
Regex_Caret_X_Hyphen |
7.397510510245535 ns/iter |
5.655836334210372 ns/iter |
1.31 |
Regex_Period_Md_Dollar |
21.013299230321696 ns/iter |
16.635875143382243 ns/iter |
1.26 |
Regex_Caret_Slash_Period_Asterisk |
6.413941451275272 ns/iter |
4.100247359224097 ns/iter |
1.56 |
Regex_Caret_Period_Range_Dollar |
2.416119481432715 ns/iter |
1.9776188938076324 ns/iter |
1.22 |
Regex_Nested_Backtrack |
26.77771697935633 ns/iter |
24.434499843250137 ns/iter |
1.10 |
JSON_Array_Of_Objects_Unique |
348.18877587159307 ns/iter |
324.43892354010546 ns/iter |
1.07 |
JSON_Parse_1 |
6128.245803100583 ns/iter |
6172.788922792371 ns/iter |
0.99 |
JSON_Parse_Real |
6504.561325619376 ns/iter |
6068.47242662936 ns/iter |
1.07 |
JSON_Parse_Decimal |
6962.521096808239 ns/iter |
6821.386452867753 ns/iter |
1.02 |
JSON_Parse_Schema_ISO_Language |
3824664.402173994 ns/iter |
3713421.794871535 ns/iter |
1.03 |
JSON_Parse_Integer |
4432.894738232773 ns/iter |
4292.198818247182 ns/iter |
1.03 |
JSON_Parse_String_NonSSO_Plain |
6713.906055379141 ns/iter |
6760.093845888749 ns/iter |
0.99 |
JSON_Parse_String_SSO_Plain |
2668.438567834441 ns/iter |
3081.9580983139094 ns/iter |
0.87 |
JSON_Parse_String_Escape_Heavy |
19870.97039238674 ns/iter |
19720.694559677006 ns/iter |
1.01 |
JSON_Parse_Object_Short_Keys |
7584.1342388661515 ns/iter |
7477.221277500528 ns/iter |
1.01 |
JSON_Parse_Object_Scalar_Properties |
4393.062498516309 ns/iter |
3945.2562818317215 ns/iter |
1.11 |
JSON_Parse_Object_Array_Properties |
7391.725651941883 ns/iter |
6514.388511729752 ns/iter |
1.13 |
JSON_Parse_Object_Object_Properties |
6909.873025465295 ns/iter |
6781.85246657012 ns/iter |
1.02 |
JSON_Parse_Nested_Containers |
55309.0991191179 ns/iter |
55103.30281968268 ns/iter |
1.00 |
JSON_From_String_Copy |
21.84238748377638 ns/iter |
21.681839564005553 ns/iter |
1.01 |
JSON_From_String_Temporary |
17.886918516123842 ns/iter |
17.85367010770523 ns/iter |
1.00 |
JSON_Number_To_Double |
30.142013881125642 ns/iter |
29.871040434520832 ns/iter |
1.01 |
JSON_Object_At_Last_Key/8 |
3.764060895860215 ns/iter |
3.7631569841812804 ns/iter |
1.00 |
JSON_Object_At_Last_Key/32 |
11.329389976842155 ns/iter |
11.32508301304743 ns/iter |
1.00 |
JSON_Object_At_Last_Key/128 |
50.651011064765086 ns/iter |
52.5702709244759 ns/iter |
0.96 |
JSON_Object_At_Last_Key/512 |
173.68662327127566 ns/iter |
173.6014321892812 ns/iter |
1.00 |
JSON_Fast_Hash_Helm_Chart_Lock |
54.26521558520187 ns/iter |
54.47068702506557 ns/iter |
1.00 |
JSON_Equality_Helm_Chart_Lock |
130.07216882587042 ns/iter |
128.39268731526798 ns/iter |
1.01 |
JSON_Divisible_By_Decimal |
182.27085227844583 ns/iter |
165.53287163202103 ns/iter |
1.10 |
JSON_String_Equal/10 |
6.493501361850213 ns/iter |
6.28443091908414 ns/iter |
1.03 |
JSON_String_Equal/100 |
6.192711640832336 ns/iter |
5.96485244184094 ns/iter |
1.04 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.3144766708675011 ns/iter |
0.3134788373504555 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
3.0250979788146397 ns/iter |
3.0467382331335324 ns/iter |
0.99 |
JSON_String_Fast_Hash/10 |
2.2011312603585904 ns/iter |
2.19953221746515 ns/iter |
1.00 |
JSON_String_Fast_Hash/100 |
1.9452464844158386 ns/iter |
1.8933934749143497 ns/iter |
1.03 |
JSON_String_Key_Hash/10 |
1.6501948192416205 ns/iter |
1.5812336560173001 ns/iter |
1.04 |
JSON_String_Key_Hash/100 |
2.1408483245389203 ns/iter |
2.1053178242538446 ns/iter |
1.02 |
JSON_Object_Defines_Miss_Same_Length |
2.630882782891252 ns/iter |
2.531861951756289 ns/iter |
1.04 |
JSON_Object_Defines_Miss_Too_Small |
2.6791490033716956 ns/iter |
2.515107899564456 ns/iter |
1.07 |
JSON_Object_Defines_Miss_Too_Large |
2.6095873538927568 ns/iter |
2.6341760846345332 ns/iter |
0.99 |
Pointer_Object_Traverse |
25.597648364721973 ns/iter |
22.226639107225633 ns/iter |
1.15 |
Pointer_Object_Try_Traverse |
23.614853379746243 ns/iter |
22.936841097371232 ns/iter |
1.03 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
165.32183640262184 ns/iter |
163.26834187512685 ns/iter |
1.01 |
Pointer_Walker_Schema_ISO_Language |
2346128.3414629907 ns/iter |
2443606.6993241576 ns/iter |
0.96 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
1101816.272440968 ns/iter |
1115989.478114405 ns/iter |
0.99 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
942482.2283463455 ns/iter |
919507.1169513614 ns/iter |
1.02 |
Pointer_Position_Tracker_Get_Deeply_Nested |
326.02813977213697 ns/iter |
311.94022287004924 ns/iter |
1.05 |
URITemplateRouter_Create |
21758.91547520156 ns/iter |
22941.760351824567 ns/iter |
0.95 |
URITemplateRouter_Match |
155.92133838116274 ns/iter |
155.62100397310655 ns/iter |
1.00 |
URITemplateRouter_Match_BasePath |
183.72024573614317 ns/iter |
183.6732395315055 ns/iter |
1.00 |
URITemplateRouterView_Restore |
9624.101504889888 ns/iter |
9679.20350969393 ns/iter |
0.99 |
URITemplateRouterView_Match |
126.16965169905913 ns/iter |
124.24223488673569 ns/iter |
1.02 |
URITemplateRouterView_Match_BasePath |
164.38704776282086 ns/iter |
141.64155108758584 ns/iter |
1.16 |
URITemplateRouterView_Arguments |
569.3754193667656 ns/iter |
510.27662628876493 ns/iter |
1.12 |
JSONL_Parse_Large |
9656956.630136574 ns/iter |
10479349.507462038 ns/iter |
0.92 |
JSONL_Parse_Large_GZIP |
11825074.353845803 ns/iter |
11291784.194028553 ns/iter |
1.05 |
JSONLD_Catalog_Annotation_Map_Populate |
6772988.558823806 ns/iter |
8518284.00000069 ns/iter |
0.80 |
JSONLD_Catalog_Materialize |
9631358.928572807 ns/iter |
10555516.179105759 ns/iter |
0.91 |
HTML_Build_Table_100000 |
33719676.57142791 ns/iter |
34684069.4285707 ns/iter |
0.97 |
HTML_Render_Table_100000 |
1413712.7281949634 ns/iter |
1675746.5330813043 ns/iter |
0.84 |
GZIP_Compress_ISO_Language_Set_3_Locations |
24207482.758615226 ns/iter |
25531949.07407201 ns/iter |
0.95 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
2916006.6234307047 ns/iter |
3063168.859648812 ns/iter |
0.95 |
GZIP_Compress_ISO_Language_Set_3_Schema |
1420724.7329317485 ns/iter |
1401067.1875001416 ns/iter |
1.01 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
257019.78284872597 ns/iter |
249504.061194553 ns/iter |
1.03 |
JOSE_VerifySignature_RS256 |
21128.456915303133 ns/iter |
20290.231177804646 ns/iter |
1.04 |
JOSE_VerifySignature_ES512 |
1128527.457990046 ns/iter |
1037666.7904903922 ns/iter |
1.09 |
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: a3eea7c | Previous: 2091647 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
5.068837499999899 ns/iter |
5.11081499999932 ns/iter |
0.99 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
5.032231000000138 ns/iter |
5.018511000000672 ns/iter |
1.00 |
Regex_Period_Asterisk |
5.031788392856689 ns/iter |
5.024318000000676 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
5.063636999999517 ns/iter |
5.027316071427939 ns/iter |
1.01 |
Regex_Period_Plus |
5.034005999999636 ns/iter |
5.020212734419885 ns/iter |
1.00 |
Regex_Period |
5.051549643984945 ns/iter |
5.0283969999998135 ns/iter |
1.00 |
Regex_Caret_Period_Plus_Dollar |
5.046839000000318 ns/iter |
5.017810714285531 ns/iter |
1.01 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
5.183593000000428 ns/iter |
5.01570700000002 ns/iter |
1.03 |
Regex_Caret_Period_Asterisk_Dollar |
5.181578571429059 ns/iter |
5.01921599999946 ns/iter |
1.03 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
5.029133035714649 ns/iter |
5.017625892857528 ns/iter |
1.00 |
Regex_Caret_X_Hyphen |
8.864091924713854 ns/iter |
8.163333705357394 ns/iter |
1.09 |
Regex_Period_Md_Dollar |
55.39816904867874 ns/iter |
44.317650720376704 ns/iter |
1.25 |
Regex_Caret_Slash_Period_Asterisk |
9.048085673891391 ns/iter |
7.8501897321421 ns/iter |
1.15 |
Regex_Caret_Period_Range_Dollar |
7.336160714285508 ns/iter |
5.643073999999615 ns/iter |
1.30 |
Regex_Nested_Backtrack |
55.34676785714509 ns/iter |
55.34190000000763 ns/iter |
1.00 |
JSON_Array_Of_Objects_Unique |
579.6105357142827 ns/iter |
593.3304464285527 ns/iter |
0.98 |
JSON_Parse_1 |
8804.416944566106 ns/iter |
9386.623437499962 ns/iter |
0.94 |
JSON_Parse_Real |
16083.939401379463 ns/iter |
16181.799107144456 ns/iter |
0.99 |
JSON_Parse_Decimal |
11888.978571428359 ns/iter |
11741.745312500383 ns/iter |
1.01 |
JSON_Parse_Schema_ISO_Language |
7772493.333333032 ns/iter |
7616926.666666282 ns/iter |
1.02 |
JSON_Parse_Integer |
6113.515178571203 ns/iter |
6276.4819999995325 ns/iter |
0.97 |
JSON_Parse_String_NonSSO_Plain |
8013.045758928123 ns/iter |
8037.219923125866 ns/iter |
1.00 |
JSON_Parse_String_SSO_Plain |
3748.746162953262 ns/iter |
3794.7189380016466 ns/iter |
0.99 |
JSON_Parse_String_Escape_Heavy |
21792.90172233527 ns/iter |
21611.09047646729 ns/iter |
1.01 |
JSON_Parse_Object_Short_Keys |
13121.449999999868 ns/iter |
13242.432399856478 ns/iter |
0.99 |
JSON_Parse_Object_Scalar_Properties |
6801.159598214416 ns/iter |
7127.757142857912 ns/iter |
0.95 |
JSON_Parse_Object_Array_Properties |
11242.123437501306 ns/iter |
11606.828571428552 ns/iter |
0.97 |
JSON_Parse_Object_Object_Properties |
11478.135937501578 ns/iter |
11593.787500000222 ns/iter |
0.99 |
JSON_Parse_Nested_Containers |
78493.80580357795 ns/iter |
79415.43526785364 ns/iter |
0.99 |
JSON_From_String_Copy |
63.97303571428584 ns/iter |
65.08358035714781 ns/iter |
0.98 |
JSON_From_String_Temporary |
57.85165178571511 ns/iter |
60.17385714285085 ns/iter |
0.96 |
JSON_Number_To_Double |
121.09105357142523 ns/iter |
122.74105357144143 ns/iter |
0.99 |
JSON_Object_At_Last_Key/8 |
7.245480357143817 ns/iter |
7.5618180803577975 ns/iter |
0.96 |
JSON_Object_At_Last_Key/32 |
23.36960464989598 ns/iter |
23.080332331694628 ns/iter |
1.01 |
JSON_Object_At_Last_Key/128 |
89.785643313145 ns/iter |
89.60726562500402 ns/iter |
1.00 |
JSON_Object_At_Last_Key/512 |
425.93241923053193 ns/iter |
424.1683185084835 ns/iter |
1.00 |
JSON_Fast_Hash_Helm_Chart_Lock |
106.76185937501968 ns/iter |
107.79051562499475 ns/iter |
0.99 |
JSON_Equality_Helm_Chart_Lock |
218.7555312499967 ns/iter |
208.93184374997983 ns/iter |
1.05 |
JSON_Divisible_By_Decimal |
310.6042410713883 ns/iter |
298.06229709123386 ns/iter |
1.04 |
JSON_String_Equal/10 |
10.864046874999644 ns/iter |
10.427973437501237 ns/iter |
1.04 |
JSON_String_Equal/100 |
12.00005178571116 ns/iter |
11.676960714284844 ns/iter |
1.03 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
2.5114075000000673 ns/iter |
2.524698571428579 ns/iter |
0.99 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
15.295674107141469 ns/iter |
15.101037655799013 ns/iter |
1.01 |
JSON_String_Fast_Hash/10 |
6.656783035712773 ns/iter |
6.627154464286125 ns/iter |
1.00 |
JSON_String_Fast_Hash/100 |
6.672853794642869 ns/iter |
6.6309285714284885 ns/iter |
1.01 |
JSON_String_Key_Hash/10 |
5.336472321429499 ns/iter |
5.371366964286242 ns/iter |
0.99 |
JSON_String_Key_Hash/100 |
11.977729687497884 ns/iter |
11.905482142858707 ns/iter |
1.01 |
JSON_Object_Defines_Miss_Same_Length |
3.7721994575506623 ns/iter |
4.737244430217008 ns/iter |
0.80 |
JSON_Object_Defines_Miss_Too_Small |
4.1156601412781475 ns/iter |
4.724424219804454 ns/iter |
0.87 |
JSON_Object_Defines_Miss_Too_Large |
3.871949457371616 ns/iter |
4.7198209926777235 ns/iter |
0.82 |
Pointer_Object_Traverse |
70.702107142852 ns/iter |
71.5870089285683 ns/iter |
0.99 |
Pointer_Object_Try_Traverse |
70.8584910714397 ns/iter |
71.36247767857944 ns/iter |
0.99 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
165.2720155316144 ns/iter |
166.7611160777655 ns/iter |
0.99 |
Pointer_Walker_Schema_ISO_Language |
11542689.062498113 ns/iter |
12132482.142858082 ns/iter |
0.95 |
Pointer_Maybe_Tracked_Deeply_Nested/0 |
2409052.1739129033 ns/iter |
2492206.024096257 ns/iter |
0.97 |
Pointer_Maybe_Tracked_Deeply_Nested/1 |
3761974.860335054 ns/iter |
3689211.2299462743 ns/iter |
1.02 |
Pointer_Position_Tracker_Get_Deeply_Nested |
532.2595019557631 ns/iter |
535.3671618276096 ns/iter |
0.99 |
URITemplateRouter_Create |
41409.715048455924 ns/iter |
40173.33294643329 ns/iter |
1.03 |
URITemplateRouter_Match |
240.99569854953245 ns/iter |
237.4859333162966 ns/iter |
1.01 |
URITemplateRouter_Match_BasePath |
276.3699385548603 ns/iter |
269.62953571431365 ns/iter |
1.02 |
URITemplateRouterView_Restore |
34691.88764486355 ns/iter |
33866.56227538603 ns/iter |
1.02 |
URITemplateRouterView_Match |
182.16926889529745 ns/iter |
180.5635071931522 ns/iter |
1.01 |
URITemplateRouterView_Match_BasePath |
207.67336572883798 ns/iter |
205.97512473326236 ns/iter |
1.01 |
URITemplateRouterView_Arguments |
531.8922999999813 ns/iter |
533.0462999999099 ns/iter |
1.00 |
JSONL_Parse_Large |
34358357.142861806 ns/iter |
32969819.04762084 ns/iter |
1.04 |
JSONL_Parse_Large_GZIP |
33708457.14286069 ns/iter |
43996236.84210646 ns/iter |
0.77 |
JSONLD_Catalog_Annotation_Map_Populate |
17632654.054050118 ns/iter |
||
JSONLD_Catalog_Materialize |
21733626.666665863 ns/iter |
||
HTML_Build_Table_100000 |
91338914.28570807 ns/iter |
104559657.14285347 ns/iter |
0.87 |
HTML_Render_Table_100000 |
7870501.111112086 ns/iter |
10153026.66666634 ns/iter |
0.78 |
GZIP_Compress_ISO_Language_Set_3_Locations |
36954515.7894711 ns/iter |
36734594.7368413 ns/iter |
1.01 |
GZIP_Decompress_ISO_Language_Set_3_Locations |
10134801.333333598 ns/iter |
10088249.3333332 ns/iter |
1.00 |
GZIP_Compress_ISO_Language_Set_3_Schema |
2110797.812500209 ns/iter |
2136193.437499756 ns/iter |
0.99 |
GZIP_Decompress_ISO_Language_Set_3_Schema |
624545.0000000525 ns/iter |
625247.3214285966 ns/iter |
1.00 |
JOSE_VerifySignature_RS256 |
21536.112500001534 ns/iter |
21305.07187500186 ns/iter |
1.01 |
JOSE_VerifySignature_ES512 |
1585328.1250000708 ns/iter |
1539254.6875000945 ns/iter |
1.03 |
This comment was automatically generated by workflow using github-action-benchmark.
Signed-off-by: Juan Cruz Viotti jv@jviotti.com