Use WeakPointer for SchemaFrame::Location::pointer#2181
Conversation
b68df32 to
efa61c5
Compare
There was a problem hiding this comment.
Benchmark (linux/llvm)
Details
| Benchmark suite | Current: 9c6230c | Previous: 8fb7ba6 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
3.1369497629523355 ns/iter |
3.1183824889962812 ns/iter |
1.01 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
3.1071282525169903 ns/iter |
3.109732668827645 ns/iter |
1.00 |
Regex_Period_Asterisk |
3.106443340139202 ns/iter |
3.1118556968327273 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
3.1073467454675487 ns/iter |
3.1101972111152283 ns/iter |
1.00 |
Regex_Period_Plus |
2.8526457110419505 ns/iter |
3.1121091735096447 ns/iter |
0.92 |
Regex_Period |
3.046424766861155 ns/iter |
2.9489884949702145 ns/iter |
1.03 |
Regex_Caret_Period_Plus_Dollar |
2.8516618000346896 ns/iter |
2.9071001288017086 ns/iter |
0.98 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.901763620832291 ns/iter |
3.110456220644822 ns/iter |
0.93 |
Regex_Caret_Period_Asterisk_Dollar |
3.1083355383284603 ns/iter |
3.541264787695676 ns/iter |
0.88 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
3.418691542078467 ns/iter |
3.4182195028367466 ns/iter |
1.00 |
Regex_Caret_X_Hyphen |
10.586688022893156 ns/iter |
13.070824560663855 ns/iter |
0.81 |
Regex_Period_Md_Dollar |
27.915669133413935 ns/iter |
27.65293423773854 ns/iter |
1.01 |
Regex_Caret_Slash_Period_Asterisk |
6.217242141049389 ns/iter |
7.165252563853543 ns/iter |
0.87 |
Regex_Caret_Period_Range_Dollar |
3.7306279926898087 ns/iter |
3.732927968166234 ns/iter |
1.00 |
Regex_Nested_Backtrack |
49.2120619193174 ns/iter |
49.18739550116175 ns/iter |
1.00 |
JSON_Array_Of_Objects_Unique |
434.77936767107957 ns/iter |
433.11474656433796 ns/iter |
1.00 |
JSON_Parse_1 |
29565.48732811623 ns/iter |
29059.923361920835 ns/iter |
1.02 |
JSON_Parse_Real |
37828.9968371671 ns/iter |
38332.007345282 ns/iter |
0.99 |
JSON_Parse_Decimal |
128249.68831406847 ns/iter |
128146.6417610516 ns/iter |
1.00 |
JSON_Fast_Hash_Helm_Chart_Lock |
62.18081001249066 ns/iter |
62.45013737847448 ns/iter |
1.00 |
JSON_Equality_Helm_Chart_Lock |
167.56243561876008 ns/iter |
161.25475706635663 ns/iter |
1.04 |
JSON_String_Equal/10 |
7.16112817140225 ns/iter |
6.5405872870314985 ns/iter |
1.09 |
JSON_String_Equal/100 |
7.776827084760576 ns/iter |
7.162401442130544 ns/iter |
1.09 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.9362299646895683 ns/iter |
0.9349570131519492 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
10.258051489480922 ns/iter |
14.601645879634544 ns/iter |
0.70 |
JSON_String_Fast_Hash/10 |
2.4895242966572466 ns/iter |
2.7970584654225856 ns/iter |
0.89 |
JSON_String_Fast_Hash/100 |
2.4924661555597183 ns/iter |
2.798569181310938 ns/iter |
0.89 |
JSON_String_Key_Hash/10 |
2.492572929599407 ns/iter |
2.6484336027182707 ns/iter |
0.94 |
JSON_String_Key_Hash/100 |
6.531427880362679 ns/iter |
9.024188884513604 ns/iter |
0.72 |
JSON_Object_Defines_Miss_Same_Length |
3.7437209898040122 ns/iter |
3.7328908309153896 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Small |
3.7373269964654408 ns/iter |
3.7331377593709005 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Large |
3.73584491030195 ns/iter |
3.7340288409939517 ns/iter |
1.00 |
Pointer_Object_Traverse |
46.05394379910136 ns/iter |
46.4407986580081 ns/iter |
0.99 |
Pointer_Object_Try_Traverse |
53.88662692119191 ns/iter |
53.221780667535405 ns/iter |
1.01 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
290.0764805716983 ns/iter |
302.6373323671779 ns/iter |
0.96 |
Pointer_Walker_Schema_ISO_Language |
3180253.62895906 ns/iter |
3215158.484018299 ns/iter |
0.99 |
Schema_Frame_WoT_References |
5235812.856060455 ns/iter |
5513945.503937037 ns/iter |
0.95 |
Schema_Frame_OMC_References |
22736891.35483892 ns/iter |
24847757.655171838 ns/iter |
0.92 |
Schema_Frame_OMC_Locations |
20230683.941178996 ns/iter |
24291034.999997653 ns/iter |
0.83 |
Schema_Frame_ISO_Language_Locations |
107883519.83334602 ns/iter |
122240799.6000129 ns/iter |
0.88 |
Schema_Iterator_ISO_Language |
2319968.9933554386 ns/iter |
2323996.0566665255 ns/iter |
1.00 |
Schema_Frame_ISO_Language_Locations_To_JSON |
130799156.99998423 ns/iter |
135607898.25001508 ns/iter |
0.96 |
Schema_Tracker_ISO_Language |
47935611.66666981 ns/iter |
47891413.80000123 ns/iter |
1.00 |
Schema_Tracker_ISO_Language_To_JSON |
24417168.482759267 ns/iter |
23559792.000001933 ns/iter |
1.04 |
Schema_Format_ISO_Language_To_JSON |
113322384.50000887 ns/iter |
127596590.80002165 ns/iter |
0.89 |
Schema_Bundle_Meta_2020_12 |
2163055.4043197683 ns/iter |
2212632.1582265827 ns/iter |
0.98 |
Alterschema_Check_Readibility_ISO_Language_Set_3 |
216626969.00000355 ns/iter |
231358499.33332035 ns/iter |
0.94 |
Alterschema_Check_Readibility_OMC |
28302592.55999863 ns/iter |
31081163.13636215 ns/iter |
0.91 |
URITemplateRouter_Create |
15671.936696274128 ns/iter |
16098.246406854652 ns/iter |
0.97 |
URITemplateRouter_Match |
173.85758742336336 ns/iter |
173.3245914338292 ns/iter |
1.00 |
URITemplateRouterView_Restore |
8219.861403469007 ns/iter |
8373.490868198736 ns/iter |
0.98 |
URITemplateRouterView_Match |
118.17680805032285 ns/iter |
118.00571646491024 ns/iter |
1.00 |
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: 9c6230c | Previous: 8fb7ba6 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
4.727190001054303 ns/iter |
3.7816719575326094 ns/iter |
1.25 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
4.395683125000005 ns/iter |
3.7628389218516936 ns/iter |
1.17 |
Regex_Period_Asterisk |
4.085952239440294 ns/iter |
4.397544374999995 ns/iter |
0.93 |
Regex_Group_Period_Asterisk_Group |
4.084082909078793 ns/iter |
4.080926897321393 ns/iter |
1.00 |
Regex_Period_Plus |
4.3906681249993085 ns/iter |
4.394636249999451 ns/iter |
1.00 |
Regex_Period |
4.392530301714558 ns/iter |
4.410186249999981 ns/iter |
1.00 |
Regex_Caret_Period_Plus_Dollar |
4.393486249999512 ns/iter |
4.099652730535181 ns/iter |
1.07 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
4.391192935646699 ns/iter |
3.7690285646990875 ns/iter |
1.17 |
Regex_Caret_Period_Asterisk_Dollar |
4.15702845982072 ns/iter |
4.073655051917514 ns/iter |
1.02 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
4.089425223213285 ns/iter |
3.7695674932683145 ns/iter |
1.08 |
Regex_Caret_X_Hyphen |
7.52611160714218 ns/iter |
7.54141852678509 ns/iter |
1.00 |
Regex_Period_Md_Dollar |
34.794743924912154 ns/iter |
36.08745154405219 ns/iter |
0.96 |
Regex_Caret_Slash_Period_Asterisk |
7.196877232143858 ns/iter |
7.204072544642059 ns/iter |
1.00 |
Regex_Caret_Period_Range_Dollar |
4.711120323015258 ns/iter |
4.0973301412449805 ns/iter |
1.15 |
Regex_Nested_Backtrack |
108.0357500000062 ns/iter |
113.39864285714286 ns/iter |
0.95 |
JSON_Array_Of_Objects_Unique |
460.52291905632353 ns/iter |
506.6799000001083 ns/iter |
0.91 |
JSON_Parse_1 |
73573.82812500645 ns/iter |
73853.45982144591 ns/iter |
1.00 |
JSON_Parse_Real |
92109.99062539969 ns/iter |
94317.03495377807 ns/iter |
0.98 |
JSON_Parse_Decimal |
362331.52901779924 ns/iter |
331616.2573674266 ns/iter |
1.09 |
JSON_Fast_Hash_Helm_Chart_Lock |
51.55498000001444 ns/iter |
72.46805357143313 ns/iter |
0.71 |
JSON_Equality_Helm_Chart_Lock |
341.0983321919132 ns/iter |
271.46895185128756 ns/iter |
1.26 |
JSON_String_Equal/10 |
13.154982530558636 ns/iter |
12.74605306809589 ns/iter |
1.03 |
JSON_String_Equal/100 |
14.435861319485873 ns/iter |
14.343281250001539 ns/iter |
1.01 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
2.1918378124993865 ns/iter |
2.1917984375001254 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
12.610867857144317 ns/iter |
12.81576071428552 ns/iter |
0.98 |
JSON_String_Fast_Hash/10 |
3.437650329449601 ns/iter |
3.7828714218163815 ns/iter |
0.91 |
JSON_String_Fast_Hash/100 |
3.4446225053822173 ns/iter |
3.800463207499054 ns/iter |
0.91 |
JSON_String_Key_Hash/10 |
4.531009375000394 ns/iter |
3.7592116004304135 ns/iter |
1.21 |
JSON_String_Key_Hash/100 |
16.53837221067808 ns/iter |
13.859485652412156 ns/iter |
1.19 |
JSON_Object_Defines_Miss_Same_Length |
3.7595480290001486 ns/iter |
4.707262510506719 ns/iter |
0.80 |
JSON_Object_Defines_Miss_Too_Small |
3.7654424932763506 ns/iter |
3.7631437432803523 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Large |
3.786909636094799 ns/iter |
4.698062287271297 ns/iter |
0.81 |
Pointer_Object_Traverse |
51.12504000001081 ns/iter |
49.303869999994276 ns/iter |
1.04 |
Pointer_Object_Try_Traverse |
67.80456473214663 ns/iter |
73.083526785719 ns/iter |
0.93 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
167.3645089285612 ns/iter |
163.13362029912452 ns/iter |
1.03 |
Pointer_Walker_Schema_ISO_Language |
10102381.250000292 ns/iter |
9769110.937497772 ns/iter |
1.03 |
Schema_Frame_WoT_References |
11470240.625001794 ns/iter |
12082333.92856885 ns/iter |
0.95 |
Schema_Frame_OMC_References |
54336600.00000434 ns/iter |
55964940.00001258 ns/iter |
0.97 |
Schema_Frame_OMC_Locations |
48988009.09092477 ns/iter |
51823500.000000425 ns/iter |
0.95 |
Schema_Frame_ISO_Language_Locations |
218719733.3333491 ns/iter |
219139000.00004104 ns/iter |
1.00 |
Schema_Iterator_ISO_Language |
4265514.4578319155 ns/iter |
4106715.6626506555 ns/iter |
1.04 |
Schema_Frame_ISO_Language_Locations_To_JSON |
247724666.66672698 ns/iter |
231749499.99997807 ns/iter |
1.07 |
Schema_Tracker_ISO_Language |
104176000.00001432 ns/iter |
97983414.28573361 ns/iter |
1.06 |
Schema_Tracker_ISO_Language_To_JSON |
55151809.09091296 ns/iter |
51891709.99999533 ns/iter |
1.06 |
Schema_Format_ISO_Language_To_JSON |
218970566.6667881 ns/iter |
218365366.66667902 ns/iter |
1.00 |
Schema_Bundle_Meta_2020_12 |
4341600.625002684 ns/iter |
4274137.499992037 ns/iter |
1.02 |
Alterschema_Check_Readibility_ISO_Language_Set_3 |
344140449.99994075 ns/iter |
340526950.00002587 ns/iter |
1.01 |
Alterschema_Check_Readibility_OMC |
64288063.636364646 ns/iter |
62640972.72727751 ns/iter |
1.03 |
URITemplateRouter_Create |
22754.86250000114 ns/iter |
21280.46874999967 ns/iter |
1.07 |
URITemplateRouter_Match |
209.8136562499775 ns/iter |
204.3872966791548 ns/iter |
1.03 |
URITemplateRouterView_Restore |
29938.62053571661 ns/iter |
31183.415365859997 ns/iter |
0.96 |
URITemplateRouterView_Match |
157.6124330357333 ns/iter |
156.52520089283988 ns/iter |
1.01 |
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: 9c6230c | Previous: 8fb7ba6 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
1.9652195031230022 ns/iter |
2.2695415417514955 ns/iter |
0.87 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.8933257994395267 ns/iter |
2.3086174214543225 ns/iter |
0.82 |
Regex_Period_Asterisk |
1.9663700477112183 ns/iter |
2.0797109800064812 ns/iter |
0.95 |
Regex_Group_Period_Asterisk_Group |
1.9684537434736151 ns/iter |
2.3217312745094496 ns/iter |
0.85 |
Regex_Period_Plus |
2.3532259265885314 ns/iter |
2.8526250505861666 ns/iter |
0.82 |
Regex_Period |
2.520571252329072 ns/iter |
2.697221969191783 ns/iter |
0.93 |
Regex_Caret_Period_Plus_Dollar |
2.9846552663244896 ns/iter |
2.5942257458138944 ns/iter |
1.15 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.644727522989351 ns/iter |
2.2299024896383024 ns/iter |
1.19 |
Regex_Caret_Period_Asterisk_Dollar |
2.173743794392317 ns/iter |
2.061210674416471 ns/iter |
1.05 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.198620087373735 ns/iter |
2.3827805172955894 ns/iter |
0.92 |
Regex_Caret_X_Hyphen |
7.917388951499608 ns/iter |
8.86482113924642 ns/iter |
0.89 |
Regex_Period_Md_Dollar |
26.379438456161193 ns/iter |
24.754706653478234 ns/iter |
1.07 |
Regex_Caret_Slash_Period_Asterisk |
6.544715672776495 ns/iter |
7.21915446066662 ns/iter |
0.91 |
Regex_Caret_Period_Range_Dollar |
2.2182316947200094 ns/iter |
2.6781771479016285 ns/iter |
0.83 |
Regex_Nested_Backtrack |
32.47676463026121 ns/iter |
46.37023547111311 ns/iter |
0.70 |
JSON_Array_Of_Objects_Unique |
439.13298782123724 ns/iter |
483.75215719431844 ns/iter |
0.91 |
JSON_Parse_1 |
24103.3482058165 ns/iter |
35131.106896393496 ns/iter |
0.69 |
JSON_Parse_Real |
28661.28917378567 ns/iter |
45699.91354404393 ns/iter |
0.63 |
JSON_Parse_Decimal |
291665.0485436949 ns/iter |
466111.2450367954 ns/iter |
0.63 |
JSON_Fast_Hash_Helm_Chart_Lock |
70.95905482177886 ns/iter |
107.39397516601962 ns/iter |
0.66 |
JSON_Equality_Helm_Chart_Lock |
170.47071153495546 ns/iter |
205.5394281711517 ns/iter |
0.83 |
JSON_String_Equal/10 |
10.800136897375129 ns/iter |
10.840222648780111 ns/iter |
1.00 |
JSON_String_Equal/100 |
11.178129104479215 ns/iter |
10.388383765306031 ns/iter |
1.08 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.3911284019376617 ns/iter |
0.449954636498815 ns/iter |
0.87 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
4.175223281383969 ns/iter |
5.817150564099064 ns/iter |
0.72 |
JSON_String_Fast_Hash/10 |
2.8675070600610666 ns/iter |
4.068569862103386 ns/iter |
0.70 |
JSON_String_Fast_Hash/100 |
2.502082748306385 ns/iter |
3.2982497278469567 ns/iter |
0.76 |
JSON_String_Key_Hash/10 |
2.0277133457873098 ns/iter |
2.328924736881755 ns/iter |
0.87 |
JSON_String_Key_Hash/100 |
3.929165630678697 ns/iter |
2.870996887831101 ns/iter |
1.37 |
JSON_Object_Defines_Miss_Same_Length |
3.1549411287928475 ns/iter |
3.583139368288938 ns/iter |
0.88 |
JSON_Object_Defines_Miss_Too_Small |
2.985192007052782 ns/iter |
3.567119026769261 ns/iter |
0.84 |
JSON_Object_Defines_Miss_Too_Large |
3.1724943237364878 ns/iter |
3.57675654901855 ns/iter |
0.89 |
Pointer_Object_Traverse |
15.766940173187926 ns/iter |
22.496580334889718 ns/iter |
0.70 |
Pointer_Object_Try_Traverse |
21.08959912230785 ns/iter |
29.74809129866572 ns/iter |
0.71 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
208.13245699658185 ns/iter |
237.5417945411526 ns/iter |
0.88 |
Pointer_Walker_Schema_ISO_Language |
4817599.308333342 ns/iter |
6738609.879032391 ns/iter |
0.71 |
Schema_Frame_WoT_References |
5687806.156521694 ns/iter |
8799000.902172338 ns/iter |
0.65 |
Schema_Frame_OMC_References |
38428291.68181858 ns/iter |
52952145.79998629 ns/iter |
0.73 |
Schema_Frame_OMC_Locations |
33889017.578943774 ns/iter |
43604721.31250504 ns/iter |
0.78 |
Schema_Frame_ISO_Language_Locations |
114430116.59998775 ns/iter |
161395041.7500405 ns/iter |
0.71 |
Schema_Iterator_ISO_Language |
2636865.6679997 ns/iter |
3502675.8801844316 ns/iter |
0.75 |
Schema_Frame_ISO_Language_Locations_To_JSON |
128147343.74998693 ns/iter |
132166499.99999389 ns/iter |
0.97 |
Schema_Tracker_ISO_Language |
60014208.30000371 ns/iter |
62811633.299998 ns/iter |
0.96 |
Schema_Tracker_ISO_Language_To_JSON |
22277481.06060696 ns/iter |
23527489.571425315 ns/iter |
0.95 |
Schema_Format_ISO_Language_To_JSON |
128528125.16662955 ns/iter |
160985974.80004174 ns/iter |
0.80 |
Schema_Bundle_Meta_2020_12 |
2591733.7226001387 ns/iter |
3062617.6360163307 ns/iter |
0.85 |
Alterschema_Check_Readibility_ISO_Language_Set_3 |
248282347.33335343 ns/iter |
255234861.3333682 ns/iter |
0.97 |
Alterschema_Check_Readibility_OMC |
45974864.56249555 ns/iter |
52267983.9230897 ns/iter |
0.88 |
URITemplateRouter_Create |
21420.054528928067 ns/iter |
21843.211081788806 ns/iter |
0.98 |
URITemplateRouter_Match |
210.73188947433223 ns/iter |
259.4101481614909 ns/iter |
0.81 |
URITemplateRouterView_Restore |
11780.046484185146 ns/iter |
16379.572637665691 ns/iter |
0.72 |
URITemplateRouterView_Match |
133.4873083319084 ns/iter |
197.1693301579997 ns/iter |
0.68 |
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: 9c6230c | Previous: 8fb7ba6 | Ratio |
|---|---|---|---|
URITemplateRouter_Create |
14334.33901316204 ns/iter |
14075.608026678558 ns/iter |
1.02 |
URITemplateRouter_Match |
155.30054567925822 ns/iter |
156.84993123520852 ns/iter |
0.99 |
URITemplateRouterView_Restore |
8181.463542031857 ns/iter |
8157.132970404829 ns/iter |
1.00 |
URITemplateRouterView_Match |
123.22036137153822 ns/iter |
141.3547894038165 ns/iter |
0.87 |
Alterschema_Check_Readibility_ISO_Language_Set_3 |
214093112.6666601 ns/iter |
224582450.66665468 ns/iter |
0.95 |
Alterschema_Check_Readibility_OMC |
30459193.782610822 ns/iter |
32727987.333330363 ns/iter |
0.93 |
Schema_Frame_WoT_References |
5754145.106556891 ns/iter |
6135337.626087874 ns/iter |
0.94 |
Schema_Frame_OMC_References |
23816460.27586236 ns/iter |
26054536.481482234 ns/iter |
0.91 |
Schema_Frame_OMC_Locations |
21697994.53125165 ns/iter |
24472644.600003455 ns/iter |
0.89 |
Schema_Frame_ISO_Language_Locations |
109159111.49999148 ns/iter |
120743704.5000006 ns/iter |
0.90 |
Schema_Iterator_ISO_Language |
2556991.7956203506 ns/iter |
2713175.4941630634 ns/iter |
0.94 |
Schema_Frame_ISO_Language_Locations_To_JSON |
293975525.0000265 ns/iter |
285470086.3333619 ns/iter |
1.03 |
Schema_Tracker_ISO_Language |
46566797.800005585 ns/iter |
48627863.5714338 ns/iter |
0.96 |
Schema_Tracker_ISO_Language_To_JSON |
32203094.772729527 ns/iter |
34139612.09523785 ns/iter |
0.94 |
Schema_Format_ISO_Language_To_JSON |
115626648.83336993 ns/iter |
125934626.19997808 ns/iter |
0.92 |
Schema_Bundle_Meta_2020_12 |
2374506.1288120607 ns/iter |
2438327.1048929817 ns/iter |
0.97 |
Pointer_Object_Traverse |
50.25215589816391 ns/iter |
48.53179243333302 ns/iter |
1.04 |
Pointer_Object_Try_Traverse |
22.722342834872254 ns/iter |
22.728917423012902 ns/iter |
1.00 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
160.62805937278821 ns/iter |
142.0470171687437 ns/iter |
1.13 |
Pointer_Walker_Schema_ISO_Language |
3514159.8799998523 ns/iter |
3473396.17676747 ns/iter |
1.01 |
JSON_Array_Of_Objects_Unique |
429.3027463886689 ns/iter |
421.13459443981475 ns/iter |
1.02 |
JSON_Parse_1 |
32815.256898504085 ns/iter |
32639.98012874401 ns/iter |
1.01 |
JSON_Parse_Real |
43356.4754719378 ns/iter |
43436.39996273239 ns/iter |
1.00 |
JSON_Parse_Decimal |
154445.41311545813 ns/iter |
154675.9470770514 ns/iter |
1.00 |
JSON_Fast_Hash_Helm_Chart_Lock |
61.278788976010105 ns/iter |
57.252765331613034 ns/iter |
1.07 |
JSON_Equality_Helm_Chart_Lock |
151.88760986536278 ns/iter |
149.64865853406877 ns/iter |
1.01 |
JSON_String_Equal/10 |
6.343375987958949 ns/iter |
6.343110693177255 ns/iter |
1.00 |
JSON_String_Equal/100 |
6.962220223090034 ns/iter |
6.976442476390278 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.6244304555480221 ns/iter |
0.6222246213052918 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
27.84441827554964 ns/iter |
19.599765525078197 ns/iter |
1.42 |
JSON_String_Fast_Hash/10 |
2.2544785925601736 ns/iter |
1.9423110325032498 ns/iter |
1.16 |
JSON_String_Fast_Hash/100 |
2.254806788875011 ns/iter |
1.943514466170811 ns/iter |
1.16 |
JSON_String_Key_Hash/10 |
1.2479343728839674 ns/iter |
1.5564337586099208 ns/iter |
0.80 |
JSON_String_Key_Hash/100 |
12.426767984945302 ns/iter |
12.428752473621845 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Same_Length |
2.4878385853101435 ns/iter |
2.487220776663794 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Small |
2.798172482234257 ns/iter |
2.491057163436372 ns/iter |
1.12 |
JSON_Object_Defines_Miss_Too_Large |
2.7978134020981353 ns/iter |
2.489522030685557 ns/iter |
1.12 |
Regex_Lower_S_Or_Upper_S_Asterisk |
3.4211189869682967 ns/iter |
3.112300405185637 ns/iter |
1.10 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
3.4278369171458167 ns/iter |
3.1106957127074177 ns/iter |
1.10 |
Regex_Period_Asterisk |
3.420491763336645 ns/iter |
3.1097290476688335 ns/iter |
1.10 |
Regex_Group_Period_Asterisk_Group |
3.4224471488643995 ns/iter |
3.110203636326942 ns/iter |
1.10 |
Regex_Period_Plus |
3.4180728104391234 ns/iter |
3.4200731774691038 ns/iter |
1.00 |
Regex_Period |
3.419105675763778 ns/iter |
3.4208958347879235 ns/iter |
1.00 |
Regex_Caret_Period_Plus_Dollar |
3.427549844642113 ns/iter |
3.4241259054062287 ns/iter |
1.00 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
3.419789580072772 ns/iter |
3.4212026048941886 ns/iter |
1.00 |
Regex_Caret_Period_Asterisk_Dollar |
4.664380071767697 ns/iter |
4.3546644114116715 ns/iter |
1.07 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
4.6638472865639695 ns/iter |
4.352093476338532 ns/iter |
1.07 |
Regex_Caret_X_Hyphen |
13.68488468683914 ns/iter |
13.679816461988949 ns/iter |
1.00 |
Regex_Period_Md_Dollar |
37.72490552006795 ns/iter |
34.80017754498791 ns/iter |
1.08 |
Regex_Caret_Slash_Period_Asterisk |
9.954958365341705 ns/iter |
8.390117967477554 ns/iter |
1.19 |
Regex_Caret_Period_Range_Dollar |
3.4212296166273695 ns/iter |
4.352373525387094 ns/iter |
0.79 |
Regex_Nested_Backtrack |
59.089683993061925 ns/iter |
64.61107266245125 ns/iter |
0.91 |
This comment was automatically generated by workflow using github-action-benchmark.
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
efa61c5 to
9c6230c
Compare
🤖 Augment PR SummarySummary: This PR switches JSON Schema framing to store schema locations using Changes:
Technical Notes: Because 🤖 Was this summary useful? React with 👍 or 👎 |
There was a problem hiding this comment.
Benchmark (macos/gcc)
Details
| Benchmark suite | Current: 9c6230c | Previous: 8fb7ba6 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.4164320176482175 ns/iter |
3.2123590253139924 ns/iter |
0.75 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.652499566982961 ns/iter |
2.932693706164569 ns/iter |
0.90 |
Regex_Period_Asterisk |
2.313046542232881 ns/iter |
3.080556882985108 ns/iter |
0.75 |
Regex_Group_Period_Asterisk_Group |
2.4034049720534645 ns/iter |
2.9808635823196328 ns/iter |
0.81 |
Regex_Period_Plus |
2.416731839053737 ns/iter |
3.4080198652381046 ns/iter |
0.71 |
Regex_Period |
2.4313170819422494 ns/iter |
3.1340143994299026 ns/iter |
0.78 |
Regex_Caret_Period_Plus_Dollar |
2.4336835279546833 ns/iter |
2.7331957419782085 ns/iter |
0.89 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.4473513739820305 ns/iter |
3.1780297838131064 ns/iter |
0.77 |
Regex_Caret_Period_Asterisk_Dollar |
2.3525340561112076 ns/iter |
2.8115920450896366 ns/iter |
0.84 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.4699710043262963 ns/iter |
3.3432597468487666 ns/iter |
0.74 |
Regex_Caret_X_Hyphen |
7.358442031370332 ns/iter |
11.623007285609978 ns/iter |
0.63 |
Regex_Period_Md_Dollar |
24.25403558890707 ns/iter |
31.788014111802244 ns/iter |
0.76 |
Regex_Caret_Slash_Period_Asterisk |
5.961321638703647 ns/iter |
7.301758531053445 ns/iter |
0.82 |
Regex_Caret_Period_Range_Dollar |
2.866108134615645 ns/iter |
3.2732657203614886 ns/iter |
0.88 |
Regex_Nested_Backtrack |
57.34488151276681 ns/iter |
67.55823581983485 ns/iter |
0.85 |
JSON_Array_Of_Objects_Unique |
330.8143107221557 ns/iter |
419.31472413511426 ns/iter |
0.79 |
JSON_Parse_1 |
27258.324384512936 ns/iter |
37609.71243412777 ns/iter |
0.72 |
JSON_Parse_Real |
26897.682921052325 ns/iter |
45253.93023526758 ns/iter |
0.59 |
JSON_Parse_Decimal |
279565.1828835955 ns/iter |
456871.235727732 ns/iter |
0.61 |
JSON_Fast_Hash_Helm_Chart_Lock |
38.74204531155195 ns/iter |
44.118114138671004 ns/iter |
0.88 |
JSON_Equality_Helm_Chart_Lock |
134.21951856217058 ns/iter |
165.74329159822602 ns/iter |
0.81 |
JSON_String_Equal/10 |
5.77331367253318 ns/iter |
8.477203845266676 ns/iter |
0.68 |
JSON_String_Equal/100 |
5.681638345272262 ns/iter |
7.03897559805925 ns/iter |
0.81 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.8031049560077425 ns/iter |
1.3487338687506458 ns/iter |
0.60 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
3.70336773378896 ns/iter |
4.855411564580525 ns/iter |
0.76 |
JSON_String_Fast_Hash/10 |
1.9645012772321813 ns/iter |
2.5050417181748976 ns/iter |
0.78 |
JSON_String_Fast_Hash/100 |
2.296273098226313 ns/iter |
2.735728330174311 ns/iter |
0.84 |
JSON_String_Key_Hash/10 |
1.78718060688138 ns/iter |
2.4114997132707123 ns/iter |
0.74 |
JSON_String_Key_Hash/100 |
3.5977863886034043 ns/iter |
4.802916036645407 ns/iter |
0.75 |
JSON_Object_Defines_Miss_Same_Length |
2.3690341435908855 ns/iter |
3.052435673202402 ns/iter |
0.78 |
JSON_Object_Defines_Miss_Too_Small |
2.7263787520904983 ns/iter |
2.9582737427474717 ns/iter |
0.92 |
JSON_Object_Defines_Miss_Too_Large |
2.3346285493813683 ns/iter |
2.303077440621922 ns/iter |
1.01 |
Pointer_Object_Traverse |
68.86743190298135 ns/iter |
92.23056013983178 ns/iter |
0.75 |
Pointer_Object_Try_Traverse |
47.73887043566191 ns/iter |
53.2504969953359 ns/iter |
0.90 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
168.41394920678374 ns/iter |
284.8536185100927 ns/iter |
0.59 |
Pointer_Walker_Schema_ISO_Language |
6265943.52722168 ns/iter |
6465796.913419451 ns/iter |
0.97 |
Schema_Frame_WoT_References |
6443603.433293404 ns/iter |
9522514.78173267 ns/iter |
0.68 |
Schema_Frame_OMC_References |
36406907.16830167 ns/iter |
39182873.33320169 ns/iter |
0.93 |
Schema_Frame_OMC_Locations |
36185928.75344413 ns/iter |
44890795.43522426 ns/iter |
0.81 |
Schema_Frame_ISO_Language_Locations |
110534572.60131836 ns/iter |
180105447.76916504 ns/iter |
0.61 |
Schema_Iterator_ISO_Language |
2201465.346057963 ns/iter |
2626334.269022204 ns/iter |
0.84 |
Schema_Frame_ISO_Language_Locations_To_JSON |
205595254.8980713 ns/iter |
215095996.85668945 ns/iter |
0.96 |
Schema_Tracker_ISO_Language |
46586360.25020055 ns/iter |
72756918.9938632 ns/iter |
0.64 |
Schema_Tracker_ISO_Language_To_JSON |
31932956.29400956 ns/iter |
41638263.0666097 ns/iter |
0.77 |
Schema_Format_ISO_Language_To_JSON |
166560590.2671814 ns/iter |
172212243.08013916 ns/iter |
0.97 |
Schema_Bundle_Meta_2020_12 |
1857331.4585584276 ns/iter |
3026514.6831296524 ns/iter |
0.61 |
Alterschema_Check_Readibility_ISO_Language_Set_3 |
152302837.37182617 ns/iter |
303853988.64746094 ns/iter |
0.50 |
Alterschema_Check_Readibility_OMC |
31552304.3922756 ns/iter |
66026711.46392822 ns/iter |
0.48 |
URITemplateRouter_Create |
13843.102589405022 ns/iter |
20539.885491618123 ns/iter |
0.67 |
URITemplateRouter_Match |
166.2273087684335 ns/iter |
238.04799052192482 ns/iter |
0.70 |
URITemplateRouterView_Restore |
9253.14773595019 ns/iter |
13739.373578336134 ns/iter |
0.67 |
URITemplateRouterView_Match |
105.60423455327478 ns/iter |
160.65190971929164 ns/iter |
0.66 |
This comment was automatically generated by workflow using github-action-benchmark.
Signed-off-by: Juan Cruz Viotti jv@jviotti.com