-
-
Notifications
You must be signed in to change notification settings - Fork 9
Separate semantic and ordering dependencies in the walker #2136
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
🤖 Augment PR SummarySummary: This PR separates semantic dependencies from evaluation-order-only dependencies in the JSON Schema walker, so downstream tooling can reason about “real” coupling without losing correct keyword ordering. Changes:
🤖 Was this summary useful? React with 👍 or 👎 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Benchmark (linux/llvm)
Details
| Benchmark suite | Current: 536ba14 | Previous: 44adbe9 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
3.114451364689595 ns/iter |
3.1126766340214322 ns/iter |
1.00 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
3.107705587586359 ns/iter |
3.109376607779426 ns/iter |
1.00 |
Regex_Period_Asterisk |
3.113924060695148 ns/iter |
3.108324592996914 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
3.113320197758179 ns/iter |
3.1072864644913185 ns/iter |
1.00 |
Regex_Period_Plus |
2.9159243720786865 ns/iter |
2.8535544083021134 ns/iter |
1.02 |
Regex_Period |
2.90170120318516 ns/iter |
3.0608440297058377 ns/iter |
0.95 |
Regex_Caret_Period_Plus_Dollar |
2.8906908873743533 ns/iter |
2.8413606743294375 ns/iter |
1.02 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.8773961775619674 ns/iter |
2.8401266651965122 ns/iter |
1.01 |
Regex_Caret_Period_Asterisk_Dollar |
2.8847084574113917 ns/iter |
3.418808653606361 ns/iter |
0.84 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.7989184131240323 ns/iter |
3.4204315024331025 ns/iter |
0.82 |
Regex_Caret_X_Hyphen |
12.438193035127354 ns/iter |
10.610502266364017 ns/iter |
1.17 |
Regex_Period_Md_Dollar |
27.213865816514346 ns/iter |
27.33450302933322 ns/iter |
1.00 |
Regex_Caret_Slash_Period_Asterisk |
7.770692956196515 ns/iter |
6.528877058931042 ns/iter |
1.19 |
Regex_Caret_Period_Range_Dollar |
4.045292385587772 ns/iter |
4.041253761400924 ns/iter |
1.00 |
Regex_Nested_Backtrack |
49.953027165407335 ns/iter |
48.9202347369842 ns/iter |
1.02 |
JSON_Array_Of_Objects_Unique |
433.31862355190566 ns/iter |
417.0167768871874 ns/iter |
1.04 |
JSON_Parse_1 |
28993.69607437748 ns/iter |
29629.819333586776 ns/iter |
0.98 |
JSON_Parse_Real |
37820.92805056039 ns/iter |
37849.60720448535 ns/iter |
1.00 |
JSON_Parse_Decimal |
131483.64907998592 ns/iter |
131307.66529158276 ns/iter |
1.00 |
JSON_Fast_Hash_Helm_Chart_Lock |
62.132893247732625 ns/iter |
55.67694605676049 ns/iter |
1.12 |
JSON_Equality_Helm_Chart_Lock |
174.3384125233239 ns/iter |
169.00703043560867 ns/iter |
1.03 |
JSON_String_Equal/10 |
6.223527743663901 ns/iter |
8.40537826975996 ns/iter |
0.74 |
JSON_String_Equal/100 |
6.849068076662901 ns/iter |
9.055514511729754 ns/iter |
0.76 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.9349132716367445 ns/iter |
0.9383232205888237 ns/iter |
1.00 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
14.606888284521384 ns/iter |
10.256672944504423 ns/iter |
1.42 |
JSON_String_Fast_Hash/10 |
2.797074887907075 ns/iter |
2.1768526652526257 ns/iter |
1.28 |
JSON_String_Fast_Hash/100 |
2.796995629538283 ns/iter |
2.1774411290165085 ns/iter |
1.28 |
JSON_String_Key_Hash/10 |
2.6940926871244835 ns/iter |
2.50587753944092 ns/iter |
1.08 |
JSON_String_Key_Hash/100 |
9.012535124735162 ns/iter |
6.528660610936706 ns/iter |
1.38 |
JSON_Object_Defines_Miss_Same_Length |
3.7341767707283573 ns/iter |
4.205847871951946 ns/iter |
0.89 |
JSON_Object_Defines_Miss_Too_Small |
3.736238837236601 ns/iter |
4.364827585237341 ns/iter |
0.86 |
JSON_Object_Defines_Miss_Too_Large |
3.733952211469295 ns/iter |
4.214310011212962 ns/iter |
0.89 |
Pointer_Object_Traverse |
44.31615534357057 ns/iter |
43.253355801588164 ns/iter |
1.02 |
Pointer_Object_Try_Traverse |
53.532494380263394 ns/iter |
52.66484202722236 ns/iter |
1.02 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
308.92630384737754 ns/iter |
311.8776100263253 ns/iter |
0.99 |
Schema_Frame_OMC_Instances |
199741970.66668844 ns/iter |
211732058.33334425 ns/iter |
0.94 |
Schema_Frame_OMC_References |
37080136.38888966 ns/iter |
40407172.94117258 ns/iter |
0.92 |
Schema_Frame_OMC_Locations |
34654781.09999935 ns/iter |
37146971.31579214 ns/iter |
0.93 |
Schema_Frame_ISO_Language_Locations |
172181038.2499882 ns/iter |
181669911.66663137 ns/iter |
0.95 |
Schema_Iterator_ISO_Language |
6202658.345132598 ns/iter |
6450237.481817566 ns/iter |
0.96 |
Schema_PointerWalker_ISO_Language |
4664046.44000022 ns/iter |
4926490.05633839 ns/iter |
0.95 |
Schema_Frame_ISO_Language_Locations_To_JSON |
148952598.59999898 ns/iter |
153172953.20000994 ns/iter |
0.97 |
Schema_Tracker_ISO_Language |
46664981.066669494 ns/iter |
51819732.99999397 ns/iter |
0.90 |
Schema_Tracker_ISO_Language_To_JSON |
23488833.20000065 ns/iter |
26100040.481482953 ns/iter |
0.90 |
Schema_Format_ISO_Language_To_JSON |
183119647.00001228 ns/iter |
185205452.74998313 ns/iter |
0.99 |
Schema_Bundle_Meta_2020_12 |
2276023.8371316334 ns/iter |
2310122.4455437055 ns/iter |
0.99 |
Alterschema_Check_Readibility_ISO_Language_Set_3 |
303404241.99999917 ns/iter |
317516440.5000146 ns/iter |
0.96 |
Alterschema_Check_Readibility_OMC |
204199170.00000015 ns/iter |
216304745.99999163 ns/iter |
0.94 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Benchmark (windows/msvc)
Details
| Benchmark suite | Current: 536ba14 | Previous: 44adbe9 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
4.619449375000784 ns/iter |
3.070422321428623 ns/iter |
1.50 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
5.105017999999291 ns/iter |
3.326174536446541 ns/iter |
1.53 |
Regex_Period_Asterisk |
4.419029698970175 ns/iter |
3.506396333023972 ns/iter |
1.26 |
Regex_Group_Period_Asterisk_Group |
5.044387500000929 ns/iter |
3.084320040512374 ns/iter |
1.64 |
Regex_Period_Plus |
4.138190290178097 ns/iter |
2.8384115612323395 ns/iter |
1.46 |
Regex_Period |
4.097134486607296 ns/iter |
2.8858134362114494 ns/iter |
1.42 |
Regex_Caret_Period_Plus_Dollar |
4.735281139449857 ns/iter |
2.811286961775918 ns/iter |
1.68 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
4.73160134984789 ns/iter |
2.874178344365237 ns/iter |
1.65 |
Regex_Caret_Period_Asterisk_Dollar |
5.05929100000003 ns/iter |
3.4439044642858057 ns/iter |
1.47 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
5.043172032375922 ns/iter |
3.3461325052284416 ns/iter |
1.51 |
Regex_Caret_X_Hyphen |
8.207517820502634 ns/iter |
6.502383035713218 ns/iter |
1.26 |
Regex_Period_Md_Dollar |
35.05192789027537 ns/iter |
30.836843750005222 ns/iter |
1.14 |
Regex_Caret_Slash_Period_Asterisk |
8.288950892857576 ns/iter |
6.155650000000686 ns/iter |
1.35 |
Regex_Caret_Period_Range_Dollar |
5.056252678571127 ns/iter |
3.4896801284757 ns/iter |
1.45 |
Regex_Nested_Backtrack |
99.37407145650732 ns/iter |
87.76780133928749 ns/iter |
1.13 |
JSON_Array_Of_Objects_Unique |
465.26307260328406 ns/iter |
390.6903459821111 ns/iter |
1.19 |
JSON_Parse_1 |
73837.96875001078 ns/iter |
75569.85491071596 ns/iter |
0.98 |
JSON_Parse_Real |
94528.90049550816 ns/iter |
94797.70992368646 ns/iter |
1.00 |
JSON_Parse_Decimal |
333009.70464142173 ns/iter |
317550.49226442375 ns/iter |
1.05 |
JSON_Fast_Hash_Helm_Chart_Lock |
62.397619999978815 ns/iter |
45.543968789782966 ns/iter |
1.37 |
JSON_Equality_Helm_Chart_Lock |
267.31146505853894 ns/iter |
233.18726192106752 ns/iter |
1.15 |
JSON_String_Equal/10 |
12.91965535714163 ns/iter |
9.778126295631289 ns/iter |
1.32 |
JSON_String_Equal/100 |
14.142959535074143 ns/iter |
13.299281860273371 ns/iter |
1.06 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
1.8938346445485057 ns/iter |
1.482283325231073 ns/iter |
1.28 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
12.914180357142868 ns/iter |
9.659482812502063 ns/iter |
1.34 |
JSON_String_Fast_Hash/10 |
3.1417540178568157 ns/iter |
2.6421946404983245 ns/iter |
1.19 |
JSON_String_Fast_Hash/100 |
3.142298214285688 ns/iter |
2.6374828324666777 ns/iter |
1.19 |
JSON_String_Key_Hash/10 |
4.406158750001055 ns/iter |
2.682841716354896 ns/iter |
1.64 |
JSON_String_Key_Hash/100 |
13.777824715276651 ns/iter |
13.729662500001691 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Same_Length |
3.8846753502058786 ns/iter |
4.110176346625949 ns/iter |
0.95 |
JSON_Object_Defines_Miss_Too_Small |
3.7779155289686024 ns/iter |
4.9880529999995815 ns/iter |
0.76 |
JSON_Object_Defines_Miss_Too_Large |
3.786277493239163 ns/iter |
4.112042194843145 ns/iter |
0.92 |
Pointer_Object_Traverse |
58.66607142857155 ns/iter |
47.1618969003396 ns/iter |
1.24 |
Pointer_Object_Try_Traverse |
71.13084821428727 ns/iter |
62.457437500000886 ns/iter |
1.14 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
148.29445989758855 ns/iter |
175.99169428502609 ns/iter |
0.84 |
Schema_Frame_OMC_Instances |
401973849.9999903 ns/iter |
397172750.00009525 ns/iter |
1.01 |
Schema_Frame_OMC_References |
80292614.28571641 ns/iter |
85064514.28570472 ns/iter |
0.94 |
Schema_Frame_OMC_Locations |
75814277.77778219 ns/iter |
82503800.00000796 ns/iter |
0.92 |
Schema_Frame_ISO_Language_Locations |
315990150.00006145 ns/iter |
325966200.000039 ns/iter |
0.97 |
Schema_Iterator_ISO_Language |
13030212.500000613 ns/iter |
15676959.99999867 ns/iter |
0.83 |
Schema_PointerWalker_ISO_Language |
10263813.3333312 ns/iter |
13018631.111107323 ns/iter |
0.79 |
Schema_Frame_ISO_Language_Locations_To_JSON |
227875133.33332753 ns/iter |
226744299.99998817 ns/iter |
1.00 |
Schema_Tracker_ISO_Language |
104450644.44444244 ns/iter |
106152416.66668378 ns/iter |
0.98 |
Schema_Tracker_ISO_Language_To_JSON |
54627989.999994494 ns/iter |
54782063.636366725 ns/iter |
1.00 |
Schema_Format_ISO_Language_To_JSON |
315389099.99994755 ns/iter |
349322899.99994737 ns/iter |
0.90 |
Schema_Bundle_Meta_2020_12 |
3832499.9999927874 ns/iter |
4206826.249991025 ns/iter |
0.91 |
Alterschema_Check_Readibility_ISO_Language_Set_3 |
487567699.9999996 ns/iter |
496329999.99994355 ns/iter |
0.98 |
Alterschema_Check_Readibility_OMC |
394711050.000069 ns/iter |
408962699.99996096 ns/iter |
0.97 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Benchmark (macos/llvm)
Details
| Benchmark suite | Current: 536ba14 | Previous: 44adbe9 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
1.7089756947214694 ns/iter |
1.5911921681881467 ns/iter |
1.07 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
1.7119225382914904 ns/iter |
1.5926124352917783 ns/iter |
1.07 |
Regex_Period_Asterisk |
1.6852557258593517 ns/iter |
1.5951485660362879 ns/iter |
1.06 |
Regex_Group_Period_Asterisk_Group |
1.9832127418593888 ns/iter |
1.5830618518433788 ns/iter |
1.25 |
Regex_Period_Plus |
2.5710612449251644 ns/iter |
1.907384404083375 ns/iter |
1.35 |
Regex_Period |
2.314999570440788 ns/iter |
1.9178956663515663 ns/iter |
1.21 |
Regex_Caret_Period_Plus_Dollar |
2.122201789100085 ns/iter |
1.9128779776730584 ns/iter |
1.11 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.4056805972865822 ns/iter |
2.0386921658069657 ns/iter |
1.18 |
Regex_Caret_Period_Asterisk_Dollar |
1.8089310407058492 ns/iter |
1.7186354142459812 ns/iter |
1.05 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
1.8395881713242075 ns/iter |
1.7520320145759327 ns/iter |
1.05 |
Regex_Caret_X_Hyphen |
6.392434089747393 ns/iter |
6.600773444485045 ns/iter |
0.97 |
Regex_Period_Md_Dollar |
19.865679887576363 ns/iter |
20.542507171063157 ns/iter |
0.97 |
Regex_Caret_Slash_Period_Asterisk |
4.905373549065251 ns/iter |
5.12366754848149 ns/iter |
0.96 |
Regex_Caret_Period_Range_Dollar |
1.747884607701125 ns/iter |
1.788306335056486 ns/iter |
0.98 |
Regex_Nested_Backtrack |
28.462135116669376 ns/iter |
29.77304329193431 ns/iter |
0.96 |
JSON_Array_Of_Objects_Unique |
363.88620189892714 ns/iter |
366.08683471011574 ns/iter |
0.99 |
JSON_Parse_1 |
20715.24557160137 ns/iter |
20941.520551066777 ns/iter |
0.99 |
JSON_Parse_Real |
25141.754297272124 ns/iter |
24130.978562422075 ns/iter |
1.04 |
JSON_Parse_Decimal |
254498.19964283702 ns/iter |
236965.1041666445 ns/iter |
1.07 |
JSON_Fast_Hash_Helm_Chart_Lock |
58.46400743112586 ns/iter |
54.65086039811794 ns/iter |
1.07 |
JSON_Equality_Helm_Chart_Lock |
143.39252484208555 ns/iter |
131.01191788257503 ns/iter |
1.09 |
JSON_String_Equal/10 |
7.672597465512941 ns/iter |
6.656900654958533 ns/iter |
1.15 |
JSON_String_Equal/100 |
7.878144125862639 ns/iter |
6.227182703530959 ns/iter |
1.27 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.3988929237703736 ns/iter |
0.31953090673921725 ns/iter |
1.25 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
4.1111495232596695 ns/iter |
3.092090548118539 ns/iter |
1.33 |
JSON_String_Fast_Hash/10 |
3.995457565728493 ns/iter |
2.2559559650813195 ns/iter |
1.77 |
JSON_String_Fast_Hash/100 |
2.4335527183618075 ns/iter |
2.092950290152977 ns/iter |
1.16 |
JSON_String_Key_Hash/10 |
1.8936478410471045 ns/iter |
1.4140540096668146 ns/iter |
1.34 |
JSON_String_Key_Hash/100 |
2.5267562196428877 ns/iter |
2.250065760918511 ns/iter |
1.12 |
JSON_Object_Defines_Miss_Same_Length |
3.0752441334493685 ns/iter |
2.7616926167292637 ns/iter |
1.11 |
JSON_Object_Defines_Miss_Too_Small |
3.2207709632914967 ns/iter |
2.7779246860338622 ns/iter |
1.16 |
JSON_Object_Defines_Miss_Too_Large |
2.9920692349816957 ns/iter |
2.7771780606869214 ns/iter |
1.08 |
Pointer_Object_Traverse |
18.31982821538256 ns/iter |
15.84759189585003 ns/iter |
1.16 |
Pointer_Object_Try_Traverse |
36.6632231943665 ns/iter |
19.647969444247632 ns/iter |
1.87 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
200.50335767876032 ns/iter |
157.0444472317236 ns/iter |
1.28 |
Schema_Frame_OMC_Instances |
235386027.99999353 ns/iter |
180669948.00000203 ns/iter |
1.30 |
Schema_Frame_OMC_References |
47584653.68749398 ns/iter |
33139384.49999589 ns/iter |
1.44 |
Schema_Frame_OMC_Locations |
47345798.99999356 ns/iter |
31312927.52173858 ns/iter |
1.51 |
Schema_Frame_ISO_Language_Locations |
174393718.75002506 ns/iter |
121107441.5999974 ns/iter |
1.44 |
Schema_Iterator_ISO_Language |
7489108.220781489 ns/iter |
6336760.869565138 ns/iter |
1.18 |
Schema_PointerWalker_ISO_Language |
7722411.702380734 ns/iter |
5766817.756097691 ns/iter |
1.34 |
Schema_Frame_ISO_Language_Locations_To_JSON |
92524833.33333808 ns/iter |
70238066.6999943 ns/iter |
1.32 |
Schema_Tracker_ISO_Language |
55988395.81250559 ns/iter |
36074120.84999737 ns/iter |
1.55 |
Schema_Tracker_ISO_Language_To_JSON |
19776467.74193706 ns/iter |
14238569.734692534 ns/iter |
1.39 |
Schema_Format_ISO_Language_To_JSON |
132342316.79998629 ns/iter |
118660888.99999265 ns/iter |
1.12 |
Schema_Bundle_Meta_2020_12 |
1905392.0835564795 ns/iter |
1697032.9784200715 ns/iter |
1.12 |
Alterschema_Check_Readibility_ISO_Language_Set_3 |
220465541.66665068 ns/iter |
214832111.00000215 ns/iter |
1.03 |
Alterschema_Check_Readibility_OMC |
192075416.50001758 ns/iter |
228803416.6666648 ns/iter |
0.84 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Benchmark (linux/gcc)
Details
| Benchmark suite | Current: 536ba14 | Previous: 44adbe9 | Ratio |
|---|---|---|---|
Alterschema_Check_Readibility_ISO_Language_Set_3 |
304068278.00004524 ns/iter |
300781247.50002646 ns/iter |
1.01 |
Alterschema_Check_Readibility_OMC |
208599822.3333263 ns/iter |
207887588.33335426 ns/iter |
1.00 |
Schema_Frame_OMC_Instances |
199114493.66660842 ns/iter |
201747661.3333808 ns/iter |
0.99 |
Schema_Frame_OMC_References |
40089611.17646697 ns/iter |
40885038.29412355 ns/iter |
0.98 |
Schema_Frame_OMC_Locations |
36818132.15788871 ns/iter |
36297115.57894217 ns/iter |
1.01 |
Schema_Frame_ISO_Language_Locations |
169902904.5000202 ns/iter |
169854143.99999854 ns/iter |
1.00 |
Schema_Iterator_ISO_Language |
6975741.990099957 ns/iter |
7255679.875001419 ns/iter |
0.96 |
Schema_PointerWalker_ISO_Language |
4482498.769229656 ns/iter |
4432969.339622099 ns/iter |
1.01 |
Schema_Frame_ISO_Language_Locations_To_JSON |
278286193.666645 ns/iter |
272568386.3333567 ns/iter |
1.02 |
Schema_Tracker_ISO_Language |
50070564.571423605 ns/iter |
48150281.39999716 ns/iter |
1.04 |
Schema_Tracker_ISO_Language_To_JSON |
33319447.9523865 ns/iter |
32335390.818182286 ns/iter |
1.03 |
Schema_Format_ISO_Language_To_JSON |
175784343.75002417 ns/iter |
177954013.49997064 ns/iter |
0.99 |
Schema_Bundle_Meta_2020_12 |
2425475.4532837626 ns/iter |
2429135.177078163 ns/iter |
1.00 |
Pointer_Object_Traverse |
49.40766025284257 ns/iter |
47.947785308493984 ns/iter |
1.03 |
Pointer_Object_Try_Traverse |
26.28000171843308 ns/iter |
22.846714610627682 ns/iter |
1.15 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
174.44161185970307 ns/iter |
178.32646845451032 ns/iter |
0.98 |
JSON_Array_Of_Objects_Unique |
397.01452673515803 ns/iter |
429.87584807925305 ns/iter |
0.92 |
JSON_Parse_1 |
33030.99160377168 ns/iter |
32570.631331476052 ns/iter |
1.01 |
JSON_Parse_Real |
44496.40791233923 ns/iter |
43958.83290489406 ns/iter |
1.01 |
JSON_Parse_Decimal |
158524.89144667043 ns/iter |
155639.33793411573 ns/iter |
1.02 |
JSON_Fast_Hash_Helm_Chart_Lock |
58.11457610000161 ns/iter |
64.91824762243616 ns/iter |
0.90 |
JSON_Equality_Helm_Chart_Lock |
159.84824910945258 ns/iter |
154.75463417863332 ns/iter |
1.03 |
JSON_String_Equal/10 |
6.924805059993005 ns/iter |
6.256894568517044 ns/iter |
1.11 |
JSON_String_Equal/100 |
7.544513063688031 ns/iter |
6.6192528067335825 ns/iter |
1.14 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.6239307993900568 ns/iter |
0.9340358251557367 ns/iter |
0.67 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
13.7333702924201 ns/iter |
13.557763294968213 ns/iter |
1.01 |
JSON_String_Fast_Hash/10 |
1.904407513640876 ns/iter |
1.9441432410890649 ns/iter |
0.98 |
JSON_String_Fast_Hash/100 |
1.9044414225638508 ns/iter |
1.9490002338970982 ns/iter |
0.98 |
JSON_String_Key_Hash/10 |
2.295517851236091 ns/iter |
2.2568119145304775 ns/iter |
1.02 |
JSON_String_Key_Hash/100 |
13.369849834287466 ns/iter |
13.647197082398716 ns/iter |
0.98 |
JSON_Object_Defines_Miss_Same_Length |
2.4864283226105313 ns/iter |
2.4869746654885807 ns/iter |
1.00 |
JSON_Object_Defines_Miss_Too_Small |
2.4915491349183325 ns/iter |
2.8346659618488546 ns/iter |
0.88 |
JSON_Object_Defines_Miss_Too_Large |
2.4863018477711782 ns/iter |
2.4865664248398125 ns/iter |
1.00 |
Regex_Lower_S_Or_Upper_S_Asterisk |
3.1084596010501158 ns/iter |
3.1174378404446528 ns/iter |
1.00 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
3.1104298717155783 ns/iter |
3.11704346948646 ns/iter |
1.00 |
Regex_Period_Asterisk |
3.110974823209563 ns/iter |
3.1087816390169367 ns/iter |
1.00 |
Regex_Group_Period_Asterisk_Group |
3.1111117490234927 ns/iter |
3.110338592514021 ns/iter |
1.00 |
Regex_Period_Plus |
3.108759387178672 ns/iter |
3.121406296089224 ns/iter |
1.00 |
Regex_Period |
3.113385364031906 ns/iter |
3.1157351085254827 ns/iter |
1.00 |
Regex_Caret_Period_Plus_Dollar |
3.1089046431870835 ns/iter |
3.1092212746886494 ns/iter |
1.00 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
3.1110083883920683 ns/iter |
3.4205240344208745 ns/iter |
0.91 |
Regex_Caret_Period_Asterisk_Dollar |
4.352232098470337 ns/iter |
4.039743140878495 ns/iter |
1.08 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
4.352060671194207 ns/iter |
4.36354290330735 ns/iter |
1.00 |
Regex_Caret_X_Hyphen |
9.640222635719203 ns/iter |
13.680883552877368 ns/iter |
0.70 |
Regex_Period_Md_Dollar |
38.37451761361921 ns/iter |
36.08561348596035 ns/iter |
1.06 |
Regex_Caret_Slash_Period_Asterisk |
9.022183203351833 ns/iter |
8.394038139139854 ns/iter |
1.07 |
Regex_Caret_Period_Range_Dollar |
4.664535853125934 ns/iter |
4.351933466253538 ns/iter |
1.07 |
Regex_Nested_Backtrack |
69.95943631975636 ns/iter |
56.7685030343652 ns/iter |
1.23 |
This comment was automatically generated by workflow using github-action-benchmark.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Benchmark (macos/gcc)
Details
| Benchmark suite | Current: 536ba14 | Previous: 44adbe9 | Ratio |
|---|---|---|---|
Regex_Lower_S_Or_Upper_S_Asterisk |
2.8986664682619434 ns/iter |
2.379909212082431 ns/iter |
1.22 |
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar |
2.7841651120606152 ns/iter |
2.4977874847126937 ns/iter |
1.11 |
Regex_Period_Asterisk |
2.897213445311078 ns/iter |
2.3565627382453687 ns/iter |
1.23 |
Regex_Group_Period_Asterisk_Group |
2.6406391256252477 ns/iter |
2.6331216509586177 ns/iter |
1.00 |
Regex_Period_Plus |
3.0210521876116245 ns/iter |
2.745661380103176 ns/iter |
1.10 |
Regex_Period |
2.960634278131734 ns/iter |
2.2756056272872356 ns/iter |
1.30 |
Regex_Caret_Period_Plus_Dollar |
2.8855850675331722 ns/iter |
2.297281139992846 ns/iter |
1.26 |
Regex_Caret_Group_Period_Plus_Group_Dollar |
2.7833359221289413 ns/iter |
2.295452876510554 ns/iter |
1.21 |
Regex_Caret_Period_Asterisk_Dollar |
2.4994448169147914 ns/iter |
2.351922522182458 ns/iter |
1.06 |
Regex_Caret_Group_Period_Asterisk_Group_Dollar |
2.3973564552849362 ns/iter |
2.1865410514488337 ns/iter |
1.10 |
Regex_Caret_X_Hyphen |
8.70435864582899 ns/iter |
6.735001450339291 ns/iter |
1.29 |
Regex_Period_Md_Dollar |
29.655593219888807 ns/iter |
22.72080061649006 ns/iter |
1.31 |
Regex_Caret_Slash_Period_Asterisk |
7.26360865005724 ns/iter |
5.1119208335876465 ns/iter |
1.42 |
Regex_Caret_Period_Range_Dollar |
2.577909054550228 ns/iter |
2.4182957383991734 ns/iter |
1.07 |
Regex_Nested_Backtrack |
68.28777396515697 ns/iter |
50.49803752081777 ns/iter |
1.35 |
JSON_Array_Of_Objects_Unique |
371.6531035189708 ns/iter |
271.83647826982855 ns/iter |
1.37 |
JSON_Parse_1 |
32273.18534334548 ns/iter |
37320.379306258365 ns/iter |
0.86 |
JSON_Parse_Real |
32463.02260617009 ns/iter |
27682.79105793823 ns/iter |
1.17 |
JSON_Parse_Decimal |
321335.70240631036 ns/iter |
322380.5781827873 ns/iter |
1.00 |
JSON_Fast_Hash_Helm_Chart_Lock |
38.9949719119832 ns/iter |
39.792819485123886 ns/iter |
0.98 |
JSON_Equality_Helm_Chart_Lock |
133.63154152194414 ns/iter |
151.01847356699852 ns/iter |
0.88 |
JSON_String_Equal/10 |
6.185836325036063 ns/iter |
7.029521306644394 ns/iter |
0.88 |
JSON_String_Equal/100 |
5.72783372825921 ns/iter |
6.450741211162083 ns/iter |
0.89 |
JSON_String_Equal_Small_By_Perfect_Hash/10 |
0.8224659637849311 ns/iter |
1.0156445459332255 ns/iter |
0.81 |
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 |
3.705867431859943 ns/iter |
4.164187117914418 ns/iter |
0.89 |
JSON_String_Fast_Hash/10 |
1.9447946236187006 ns/iter |
2.106982430334328 ns/iter |
0.92 |
JSON_String_Fast_Hash/100 |
2.0447875999910177 ns/iter |
1.8925660856759046 ns/iter |
1.08 |
JSON_String_Key_Hash/10 |
1.6384485595949232 ns/iter |
1.520885466775703 ns/iter |
1.08 |
JSON_String_Key_Hash/100 |
2.8660318764132664 ns/iter |
2.9788360548620094 ns/iter |
0.96 |
JSON_Object_Defines_Miss_Same_Length |
2.0502647233729423 ns/iter |
1.948705782686527 ns/iter |
1.05 |
JSON_Object_Defines_Miss_Too_Small |
2.3114546812705816 ns/iter |
1.9275543730200106 ns/iter |
1.20 |
JSON_Object_Defines_Miss_Too_Large |
2.1930351089771407 ns/iter |
1.9358984195374889 ns/iter |
1.13 |
Pointer_Object_Traverse |
60.770149569724325 ns/iter |
54.11803181713642 ns/iter |
1.12 |
Pointer_Object_Try_Traverse |
48.05352648989063 ns/iter |
42.45323464470085 ns/iter |
1.13 |
Pointer_Push_Back_Pointer_To_Weak_Pointer |
239.4218107226094 ns/iter |
180.81972349645542 ns/iter |
1.32 |
Schema_Frame_OMC_Instances |
566370964.050293 ns/iter |
221555233.00170898 ns/iter |
2.56 |
Schema_Frame_OMC_References |
51672005.65338135 ns/iter |
58303093.910217285 ns/iter |
0.89 |
Schema_Frame_OMC_Locations |
47817452.74861654 ns/iter |
52580613.356370196 ns/iter |
0.91 |
Schema_Frame_ISO_Language_Locations |
210992574.69177246 ns/iter |
229569673.538208 ns/iter |
0.92 |
Schema_Iterator_ISO_Language |
8591684.062829178 ns/iter |
8018311.159110364 ns/iter |
1.07 |
Schema_PointerWalker_ISO_Language |
10301811.107690783 ns/iter |
9584271.546566125 ns/iter |
1.07 |
Schema_Frame_ISO_Language_Locations_To_JSON |
172439754.00924683 ns/iter |
148124754.42886353 ns/iter |
1.16 |
Schema_Tracker_ISO_Language |
43301725.38757324 ns/iter |
40294435.28917101 ns/iter |
1.07 |
Schema_Tracker_ISO_Language_To_JSON |
26426150.248600885 ns/iter |
27702923.174257632 ns/iter |
0.95 |
Schema_Format_ISO_Language_To_JSON |
178178846.8360901 ns/iter |
176592230.79681396 ns/iter |
1.01 |
Schema_Bundle_Meta_2020_12 |
2036346.0333583455 ns/iter |
2123186.105414282 ns/iter |
0.96 |
Alterschema_Check_Readibility_ISO_Language_Set_3 |
260536273.32051596 ns/iter |
277328014.3737793 ns/iter |
0.94 |
Alterschema_Check_Readibility_OMC |
213639259.3383789 ns/iter |
218646367.39095053 ns/iter |
0.98 |
This comment was automatically generated by workflow using github-action-benchmark.
Signed-off-by: Juan Cruz Viotti jv@jviotti.com