Skip to content

Conversation

@jviotti
Copy link
Member

@jviotti jviotti commented Jan 28, 2026

Signed-off-by: Juan Cruz Viotti jv@jviotti.com

@augmentcode
Copy link

augmentcode bot commented Jan 28, 2026

🤖 Augment PR Summary

Summary: Adds a new microbenchmark to measure applying the AlterSchema linter transformation bundle to a real-world KrakenD JSON Schema.

Changes:

  • Introduced Alterschema_Apply_Readibility_KrakenD benchmark that runs SchemaTransformer::apply with AlterSchemaMode::Linter.
  • Loads the KrakenD schema fixture and excludes JSON parsing from the measured time via state.PauseTiming()/state.ResumeTiming().
  • Asserts that applying the bundle leaves no remaining (non-mutating) linter findings and prevents the result from being optimized away.
  • Registers the new benchmark in the benchmark suite.
  • Adds a new schema fixture file: benchmark/schemas/2019_09_krakend.json.

Technical Notes: The benchmark is intended to reflect end-to-end transformation cost on a representative schema while keeping I/O/parsing overhead out of the reported timing.

🤖 Was this summary useful? React with 👍 or 👎

Copy link

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. 1 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

@jviotti
Copy link
Member Author

jviotti commented Jan 28, 2026

augment review

Copy link

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. 1 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

for (auto _ : state) {
state.PauseTiming();
auto schema{
sourcemeta::core::read_json(std::filesystem::path{CURRENT_DIRECTORY} /
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

read_json(...) is executed every iteration (even though timing is paused), which can still make the benchmark’s wall-clock runtime very large (and potentially problematic for CI) if the schema is big. Consider whether you want a cheaper per-iteration reset mechanism so the benchmark cost is dominated by bundle.apply rather than repeated parse/I/O work.

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎

Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
@jviotti jviotti merged commit 0e035dc into main Jan 28, 2026
13 checks passed
@jviotti jviotti deleted the krakend-benchmark branch January 28, 2026 17:16
Copy link

@github-actions github-actions bot left a 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: 3b1db5f Previous: 421f999 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 3.1737366750996343 ns/iter 2.985904111354964 ns/iter 1.06
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 3.1749291101488692 ns/iter 2.976724811407658 ns/iter 1.07
Regex_Period_Asterisk 3.1082010427097515 ns/iter 2.978204434723513 ns/iter 1.04
Regex_Group_Period_Asterisk_Group 3.1131685068558723 ns/iter 2.996049591841297 ns/iter 1.04
Regex_Period_Plus 3.1020447292712126 ns/iter 3.059410028327669 ns/iter 1.01
Regex_Period 3.219798430034009 ns/iter 2.92859552912044 ns/iter 1.10
Regex_Caret_Period_Plus_Dollar 3.141829927714256 ns/iter 3.1194964557872416 ns/iter 1.01
Regex_Caret_Group_Period_Plus_Group_Dollar 3.120177184081216 ns/iter 3.078546520872038 ns/iter 1.01
Regex_Caret_Period_Asterisk_Dollar 3.1097486495869773 ns/iter 3.43073063420892 ns/iter 0.91
Regex_Caret_Group_Period_Asterisk_Group_Dollar 3.1237167334265434 ns/iter 3.429827452064143 ns/iter 0.91
Regex_Caret_X_Hyphen 12.440584149501705 ns/iter 12.444493885318893 ns/iter 1.00
Regex_Period_Md_Dollar 27.659589285866755 ns/iter 27.44274015836109 ns/iter 1.01
Regex_Caret_Slash_Period_Asterisk 7.149686789521206 ns/iter 7.201023335479265 ns/iter 0.99
Regex_Caret_Period_Range_Dollar 4.044169676086428 ns/iter 3.7480549968116867 ns/iter 1.08
Regex_Nested_Backtrack 49.183383446473876 ns/iter 50.81107949999932 ns/iter 0.97
JSON_Array_Of_Objects_Unique 467.6242164136418 ns/iter 440.6115628734062 ns/iter 1.06
JSON_Parse_1 29212.81259175424 ns/iter 29485.869399710176 ns/iter 0.99
JSON_Parse_Real 37742.27657968545 ns/iter 38208.71616079118 ns/iter 0.99
JSON_Parse_Decimal 129351.456847163 ns/iter 132315.12344281585 ns/iter 0.98
JSON_Parse_Schema_ISO_Language 22325137.580647577 ns/iter 22450823.322581146 ns/iter 0.99
JSON_Fast_Hash_Helm_Chart_Lock 62.54091176351493 ns/iter 62.81440896752716 ns/iter 1.00
JSON_Equality_Helm_Chart_Lock 170.15533959518757 ns/iter 162.643642994635 ns/iter 1.05
JSON_String_Equal/10 7.773788490960653 ns/iter 7.8519120985421065 ns/iter 0.99
JSON_String_Equal/100 7.489683443516765 ns/iter 7.4990569401945635 ns/iter 1.00
JSON_String_Equal_Small_By_Perfect_Hash/10 0.9343912754967809 ns/iter 0.9354160780855424 ns/iter 1.00
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 14.79063829573309 ns/iter 14.611812522145255 ns/iter 1.01
JSON_String_Fast_Hash/10 2.4871885563813723 ns/iter 2.4929341525732758 ns/iter 1.00
JSON_String_Fast_Hash/100 2.4867137082462762 ns/iter 2.4940516319372543 ns/iter 1.00
JSON_String_Key_Hash/10 2.709061163346016 ns/iter 2.6343446680844544 ns/iter 1.03
JSON_String_Key_Hash/100 9.014844980784074 ns/iter 9.013861084297666 ns/iter 1.00
JSON_Object_Defines_Miss_Same_Length 3.7363319474381247 ns/iter 3.733739866101191 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Small 3.735123171823242 ns/iter 3.734697149117295 ns/iter 1.00
JSON_Object_Defines_Miss_Too_Large 3.735517548540185 ns/iter 3.7347613084777507 ns/iter 1.00
Pointer_Object_Traverse 44.4707620528911 ns/iter 43.83315263847902 ns/iter 1.01
Pointer_Object_Try_Traverse 53.387737394737215 ns/iter 55.76219178640388 ns/iter 0.96
Pointer_Push_Back_Pointer_To_Weak_Pointer 320.21774006950176 ns/iter 320.76664965892127 ns/iter 1.00
Pointer_Walker_Schema_ISO_Language 3136310.9147980646 ns/iter 3143714.7567562778 ns/iter 1.00
Schema_Frame_WoT_References 6366682.834782692 ns/iter 6148648.5263155075 ns/iter 1.04
Schema_Frame_OMC_References 30756491.86956506 ns/iter 28616722.999998957 ns/iter 1.07
Schema_Frame_OMC_Locations 28197360.249999788 ns/iter 26902873.499999747 ns/iter 1.05
Schema_Frame_ISO_Language_Locations 130052929.79999013 ns/iter 130247891.99998851 ns/iter 1.00
Schema_Iterator_ISO_Language 2375751.7905403655 ns/iter 2336624.508305542 ns/iter 1.02
Schema_Frame_ISO_Language_Locations_To_JSON 138506751.99998364 ns/iter 138197595.9999977 ns/iter 1.00
Schema_Tracker_ISO_Language 47696207.42857634 ns/iter 45536854.26666713 ns/iter 1.05
Schema_Tracker_ISO_Language_To_JSON 25015528.2222219 ns/iter 23320140.433330987 ns/iter 1.07
Schema_Format_ISO_Language_To_JSON 140994703.79999274 ns/iter 137589957.79994622 ns/iter 1.02
Schema_Bundle_Meta_2020_12 2179514.2803741633 ns/iter 2230700.850794973 ns/iter 0.98
Schema_Frame_Many_Resources_References 277382108.4999781 ns/iter 267335857.9999672 ns/iter 1.04
Alterschema_Check_Readibility_ISO_Language_Set_3 251144961.00002268 ns/iter 241021217.33331692 ns/iter 1.04
Alterschema_Check_Readibility_OMC 34639613.649994776 ns/iter 33097891.238098565 ns/iter 1.05
Alterschema_Apply_Readibility_KrakenD 20782687750.999912 ns/iter
EditorSchema_ForEditor_EmbeddedResources 14707127.255330808 ns/iter 14563090.499999968 ns/iter 1.01
URITemplateRouter_Create 16182.555771118872 ns/iter 17137.919532976983 ns/iter 0.94
URITemplateRouter_Match 174.26213753055757 ns/iter 171.42942498926044 ns/iter 1.02
URITemplateRouterView_Restore 8401.316270649875 ns/iter 8254.158050428125 ns/iter 1.02
URITemplateRouterView_Match 118.17417589121752 ns/iter 124.00848882382584 ns/iter 0.95

This comment was automatically generated by workflow using github-action-benchmark.

Copy link

@github-actions github-actions bot left a 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: 3b1db5f Previous: 421f999 Ratio
URITemplateRouter_Create 14940.271035563403 ns/iter 11149.913228241106 ns/iter 1.34
URITemplateRouter_Match 155.27830847093733 ns/iter 148.69741713098966 ns/iter 1.04
URITemplateRouterView_Restore 8455.907050224667 ns/iter 3530.7605137942815 ns/iter 2.39
URITemplateRouterView_Match 143.77605018014492 ns/iter 114.43220962922355 ns/iter 1.26
EditorSchema_ForEditor_EmbeddedResources 15939230.045422517 ns/iter 13321148.962267268 ns/iter 1.20
Alterschema_Check_Readibility_ISO_Language_Set_3 248416388.66670716 ns/iter 200104545.33333662 ns/iter 1.24
Alterschema_Check_Readibility_OMC 37041769.00000197 ns/iter 29836029.43477901 ns/iter 1.24
Alterschema_Apply_Readibility_KrakenD 22319075674.000034 ns/iter
Schema_Frame_WoT_References 6667380.2285723 ns/iter 5685533.097561332 ns/iter 1.17
Schema_Frame_OMC_References 31587710.454552755 ns/iter 25276975.821425043 ns/iter 1.25
Schema_Frame_OMC_Locations 29900607.00000433 ns/iter 23977742.066661753 ns/iter 1.25
Schema_Frame_ISO_Language_Locations 139736864.59999043 ns/iter 118156672.00001675 ns/iter 1.18
Schema_Iterator_ISO_Language 2787569.480000457 ns/iter 2566898.7875458417 ns/iter 1.09
Schema_Frame_ISO_Language_Locations_To_JSON 317658446.9999852 ns/iter 257478186.33332524 ns/iter 1.23
Schema_Tracker_ISO_Language 51292824.85714676 ns/iter 45035555.799995564 ns/iter 1.14
Schema_Tracker_ISO_Language_To_JSON 37844087.42104748 ns/iter 33616185.285717666 ns/iter 1.13
Schema_Format_ISO_Language_To_JSON 148244457.99999923 ns/iter 124965683.33335745 ns/iter 1.19
Schema_Bundle_Meta_2020_12 2443310.8028100715 ns/iter 2270335.788956764 ns/iter 1.08
Schema_Frame_Many_Resources_References 297828505.4999787 ns/iter 239845328.33333108 ns/iter 1.24
Pointer_Object_Traverse 46.4469419920591 ns/iter 44.27695769940312 ns/iter 1.05
Pointer_Object_Try_Traverse 28.1936696832969 ns/iter 25.169475284466454 ns/iter 1.12
Pointer_Push_Back_Pointer_To_Weak_Pointer 171.87481711872073 ns/iter 164.17128141172924 ns/iter 1.05
Pointer_Walker_Schema_ISO_Language 3619435.078534056 ns/iter 3360870.6730774427 ns/iter 1.08
JSON_Array_Of_Objects_Unique 425.51517885248575 ns/iter 314.4539499828586 ns/iter 1.35
JSON_Parse_1 33674.35514608952 ns/iter 30980.487993636252 ns/iter 1.09
JSON_Parse_Real 44053.70025236867 ns/iter 42046.86591004092 ns/iter 1.05
JSON_Parse_Decimal 159226.60181409965 ns/iter 151981.9343654656 ns/iter 1.05
JSON_Parse_Schema_ISO_Language 22703707.064516902 ns/iter 21832102.749996807 ns/iter 1.04
JSON_Fast_Hash_Helm_Chart_Lock 59.498337648343224 ns/iter 46.40618670618395 ns/iter 1.28
JSON_Equality_Helm_Chart_Lock 149.2812604009853 ns/iter 141.6722744328062 ns/iter 1.05
JSON_String_Equal/10 6.265156362185581 ns/iter 5.581182987903864 ns/iter 1.12
JSON_String_Equal/100 6.887991115950812 ns/iter 6.747593539843419 ns/iter 1.02
JSON_String_Equal_Small_By_Perfect_Hash/10 0.9351623145849677 ns/iter 0.824920979611851 ns/iter 1.13
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 14.914681643527224 ns/iter 9.506376618273476 ns/iter 1.57
JSON_String_Fast_Hash/10 2.254768806853482 ns/iter 2.124138191916713 ns/iter 1.06
JSON_String_Fast_Hash/100 2.257020082462229 ns/iter 2.139851178735883 ns/iter 1.05
JSON_String_Key_Hash/10 1.245825327708478 ns/iter 1.25849748072314 ns/iter 0.99
JSON_String_Key_Hash/100 12.425672552922281 ns/iter 11.829799169780289 ns/iter 1.05
JSON_Object_Defines_Miss_Same_Length 2.8116142540215225 ns/iter 3.2579531194321194 ns/iter 0.86
JSON_Object_Defines_Miss_Too_Small 2.797718674535911 ns/iter 3.183475139501656 ns/iter 0.88
JSON_Object_Defines_Miss_Too_Large 2.7977284201818424 ns/iter 2.910711411797838 ns/iter 0.96
Regex_Lower_S_Or_Upper_S_Asterisk 3.111754995427057 ns/iter 2.703016971849911 ns/iter 1.15
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 3.110069537309511 ns/iter 2.662397001470223 ns/iter 1.17
Regex_Period_Asterisk 3.109324292462224 ns/iter 2.652299101059425 ns/iter 1.17
Regex_Group_Period_Asterisk_Group 3.111250243686743 ns/iter 2.671788062335043 ns/iter 1.16
Regex_Period_Plus 3.1177303223293564 ns/iter 2.7296361591601332 ns/iter 1.14
Regex_Period 3.1128906989262743 ns/iter 2.669654275557585 ns/iter 1.17
Regex_Caret_Period_Plus_Dollar 3.1161376386810864 ns/iter 2.7388862794939333 ns/iter 1.14
Regex_Caret_Group_Period_Plus_Group_Dollar 3.111276694545183 ns/iter 2.7391695008043193 ns/iter 1.14
Regex_Caret_Period_Asterisk_Dollar 3.4904490035515 ns/iter 2.671718430794195 ns/iter 1.31
Regex_Caret_Group_Period_Asterisk_Group_Dollar 3.1173041718230805 ns/iter 2.6408510539514385 ns/iter 1.18
Regex_Caret_X_Hyphen 13.074275607441047 ns/iter 8.900981351036599 ns/iter 1.47
Regex_Period_Md_Dollar 36.55336572253687 ns/iter 30.792707809661312 ns/iter 1.19
Regex_Caret_Slash_Period_Asterisk 8.085968901703012 ns/iter 8.508514572982435 ns/iter 0.95
Regex_Caret_Period_Range_Dollar 4.665610393786967 ns/iter 2.600542811230408 ns/iter 1.79
Regex_Nested_Backtrack 59.05578486835695 ns/iter 51.03831898389597 ns/iter 1.16

This comment was automatically generated by workflow using github-action-benchmark.

Copy link

@github-actions github-actions bot left a 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: 3b1db5f Previous: 421f999 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 3.084594861940655 ns/iter 3.0493741071429623 ns/iter 1.01
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.8753830790740036 ns/iter 2.807139775532677 ns/iter 1.02
Regex_Period_Asterisk 3.257084374999814 ns/iter 2.939345375527795 ns/iter 1.11
Regex_Group_Period_Asterisk_Group 3.0571462235840925 ns/iter 2.964741335315074 ns/iter 1.03
Regex_Period_Plus 3.523934213243914 ns/iter 2.9310566255387047 ns/iter 1.20
Regex_Period 3.5211767802114737 ns/iter 2.926603076437826 ns/iter 1.20
Regex_Caret_Period_Plus_Dollar 3.2355933035717044 ns/iter 2.682130220819672 ns/iter 1.21
Regex_Caret_Group_Period_Plus_Group_Dollar 2.93882669249259 ns/iter 2.6417597744270016 ns/iter 1.11
Regex_Caret_Period_Asterisk_Dollar 2.9914236120646103 ns/iter 2.9822768933273403 ns/iter 1.00
Regex_Caret_Group_Period_Asterisk_Group_Dollar 2.8576924515301383 ns/iter 2.8546641951540512 ns/iter 1.00
Regex_Caret_X_Hyphen 5.86955803571446 ns/iter 6.130280357142834 ns/iter 0.96
Regex_Period_Md_Dollar 30.40258928571404 ns/iter 30.751339285711563 ns/iter 0.99
Regex_Caret_Slash_Period_Asterisk 5.866963999999371 ns/iter 5.847561607142536 ns/iter 1.00
Regex_Caret_Period_Range_Dollar 3.4001760990623824 ns/iter 3.230004848796928 ns/iter 1.05
Regex_Nested_Backtrack 92.84051339284767 ns/iter 90.77597809036651 ns/iter 1.02
JSON_Array_Of_Objects_Unique 416.5649590819337 ns/iter 390.1520089285729 ns/iter 1.07
JSON_Parse_1 76145.61383927513 ns/iter 73820.19642856262 ns/iter 1.03
JSON_Parse_Real 100787.02290075844 ns/iter 98336.66800589887 ns/iter 1.02
JSON_Parse_Decimal 329455.89390967647 ns/iter 323257.9934364999 ns/iter 1.02
JSON_Parse_Schema_ISO_Language 61139700.00001245 ns/iter 59254136.36364076 ns/iter 1.03
JSON_Fast_Hash_Helm_Chart_Lock 50.20540178571358 ns/iter 42.00075334821791 ns/iter 1.20
JSON_Equality_Helm_Chart_Lock 238.57249999999956 ns/iter 244.6860357142912 ns/iter 0.98
JSON_String_Equal/10 10.565444149261271 ns/iter 10.32061870392547 ns/iter 1.02
JSON_String_Equal/100 13.684297037123194 ns/iter 13.572600609051499 ns/iter 1.01
JSON_String_Equal_Small_By_Perfect_Hash/10 1.7563933270689092 ns/iter 1.745499889561706 ns/iter 1.01
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 9.3757298688594 ns/iter 9.616131653499497 ns/iter 0.98
JSON_String_Fast_Hash/10 2.6329885714281835 ns/iter 2.0560959575267934 ns/iter 1.28
JSON_String_Fast_Hash/100 2.6419677208551215 ns/iter 2.110650979786998 ns/iter 1.25
JSON_String_Key_Hash/10 2.669815845830524 ns/iter 2.8645883022925447 ns/iter 0.93
JSON_String_Key_Hash/100 13.9751838661825 ns/iter 14.487180357142345 ns/iter 0.96
JSON_Object_Defines_Miss_Same_Length 4.976610000001074 ns/iter 5.216025999999374 ns/iter 0.95
JSON_Object_Defines_Miss_Too_Small 4.340998524847309 ns/iter 4.2637968750000255 ns/iter 1.02
JSON_Object_Defines_Miss_Too_Large 5.020187500000312 ns/iter 4.952143750000256 ns/iter 1.01
Pointer_Object_Traverse 49.04869642857079 ns/iter 45.60285561961211 ns/iter 1.08
Pointer_Object_Try_Traverse 66.85010044643138 ns/iter 62.5301428571439 ns/iter 1.07
Pointer_Push_Back_Pointer_To_Weak_Pointer 180.2908482142738 ns/iter 173.47914048919887 ns/iter 1.04
Pointer_Walker_Schema_ISO_Language 12888291.071427764 ns/iter 10463696.428571114 ns/iter 1.23
Schema_Frame_WoT_References 12195162.500002965 ns/iter 11220446.87500079 ns/iter 1.09
Schema_Frame_OMC_References 61076581.81818724 ns/iter 57247372.72727122 ns/iter 1.07
Schema_Frame_OMC_Locations 55492630.000003375 ns/iter 54210979.999993466 ns/iter 1.02
Schema_Frame_ISO_Language_Locations 263533099.99997994 ns/iter 251556233.33334157 ns/iter 1.05
Schema_Iterator_ISO_Language 4971327.678571162 ns/iter 4614580.519480363 ns/iter 1.08
Schema_Frame_ISO_Language_Locations_To_JSON 275526800.0000797 ns/iter 265820100.00000384 ns/iter 1.04
Schema_Tracker_ISO_Language 107543000.00000209 ns/iter 104338857.1428555 ns/iter 1.03
Schema_Tracker_ISO_Language_To_JSON 58480309.09090663 ns/iter 53417930.00000052 ns/iter 1.09
Schema_Format_ISO_Language_To_JSON 270950599.99999195 ns/iter 250633966.66663113 ns/iter 1.08
Schema_Bundle_Meta_2020_12 4126503.0120495837 ns/iter 4132129.608934245 ns/iter 1.00
Schema_Frame_Many_Resources_References 529886400.0001231 ns/iter 503935100.00003517 ns/iter 1.05
Alterschema_Check_Readibility_ISO_Language_Set_3 389296749.99997133 ns/iter 372669649.9999775 ns/iter 1.04
Alterschema_Check_Readibility_OMC 68697566.66666642 ns/iter 64788972.72728029 ns/iter 1.06
Alterschema_Apply_Readibility_KrakenD 41750524699.999916 ns/iter
EditorSchema_ForEditor_EmbeddedResources 27161619.51218232 ns/iter 26180326.666675076 ns/iter 1.04
URITemplateRouter_Create 21479.211885559955 ns/iter 21109.626871668777 ns/iter 1.02
URITemplateRouter_Match 233.09785714283342 ns/iter 223.16450000001709 ns/iter 1.04
URITemplateRouterView_Restore 27215.274999995083 ns/iter 25234.739877809036 ns/iter 1.08
URITemplateRouterView_Match 150.98041736696035 ns/iter 157.95566459525836 ns/iter 0.96

This comment was automatically generated by workflow using github-action-benchmark.

Copy link

@github-actions github-actions bot left a 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: 3b1db5f Previous: 421f999 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 2.45194643484763 ns/iter 2.0980685485177175 ns/iter 1.17
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.302843944844016 ns/iter 1.8909890926930972 ns/iter 1.22
Regex_Period_Asterisk 2.2014240173392796 ns/iter 1.9454174713494086 ns/iter 1.13
Regex_Group_Period_Asterisk_Group 2.2631148941327406 ns/iter 1.9015356228403573 ns/iter 1.19
Regex_Period_Plus 2.5869121552433993 ns/iter 2.498348921534349 ns/iter 1.04
Regex_Period 2.761760564285663 ns/iter 2.616721780919506 ns/iter 1.06
Regex_Caret_Period_Plus_Dollar 2.552901138790922 ns/iter 2.74792230672283 ns/iter 0.93
Regex_Caret_Group_Period_Plus_Group_Dollar 2.5660471822405855 ns/iter 2.557775541265525 ns/iter 1.00
Regex_Caret_Period_Asterisk_Dollar 2.28243505254377 ns/iter 2.0839249410602076 ns/iter 1.10
Regex_Caret_Group_Period_Asterisk_Group_Dollar 2.1688410420842654 ns/iter 2.1203426719619785 ns/iter 1.02
Regex_Caret_X_Hyphen 7.490321398856424 ns/iter 7.541843717344996 ns/iter 0.99
Regex_Period_Md_Dollar 30.23896722789736 ns/iter 29.320869074419196 ns/iter 1.03
Regex_Caret_Slash_Period_Asterisk 6.789463922313933 ns/iter 7.408654641916357 ns/iter 0.92
Regex_Caret_Period_Range_Dollar 2.011879007713927 ns/iter 2.0875396681748417 ns/iter 0.96
Regex_Nested_Backtrack 33.24581499154739 ns/iter 34.973927831842104 ns/iter 0.95
JSON_Array_Of_Objects_Unique 387.3263873505907 ns/iter 361.38792769102747 ns/iter 1.07
JSON_Parse_1 22539.750850285876 ns/iter 22098.230201624465 ns/iter 1.02
JSON_Parse_Real 32811.24782018708 ns/iter 35288.49349790087 ns/iter 0.93
JSON_Parse_Decimal 345592.336381144 ns/iter 387979.92755414604 ns/iter 0.89
JSON_Parse_Schema_ISO_Language 20454524.49999964 ns/iter 23158994.07143109 ns/iter 0.88
JSON_Fast_Hash_Helm_Chart_Lock 72.01365762775855 ns/iter 70.19763143566813 ns/iter 1.03
JSON_Equality_Helm_Chart_Lock 189.8192681684408 ns/iter 169.45549458760337 ns/iter 1.12
JSON_String_Equal/10 8.637474465552838 ns/iter 8.567285683743682 ns/iter 1.01
JSON_String_Equal/100 8.869646097168713 ns/iter 7.1327522285888065 ns/iter 1.24
JSON_String_Equal_Small_By_Perfect_Hash/10 0.3858259850848212 ns/iter 0.39021437117857927 ns/iter 0.99
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 4.033881461020096 ns/iter 5.28605164482926 ns/iter 0.76
JSON_String_Fast_Hash/10 3.089790078301643 ns/iter 2.733675235659131 ns/iter 1.13
JSON_String_Fast_Hash/100 2.249004654526314 ns/iter 2.5379093423512726 ns/iter 0.89
JSON_String_Key_Hash/10 1.9568372813883184 ns/iter 1.723963656471523 ns/iter 1.14
JSON_String_Key_Hash/100 3.819989199554352 ns/iter 2.8666167679619377 ns/iter 1.33
JSON_Object_Defines_Miss_Same_Length 3.324050955949383 ns/iter 3.45830817770974 ns/iter 0.96
JSON_Object_Defines_Miss_Too_Small 3.374433480245663 ns/iter 3.234033911268603 ns/iter 1.04
JSON_Object_Defines_Miss_Too_Large 3.459757514209833 ns/iter 3.794714566172621 ns/iter 0.91
Pointer_Object_Traverse 17.803581295727046 ns/iter 21.99456176035521 ns/iter 0.81
Pointer_Object_Try_Traverse 24.703977773774643 ns/iter 33.322278336953765 ns/iter 0.74
Pointer_Push_Back_Pointer_To_Weak_Pointer 194.9994431292725 ns/iter 217.6993686781271 ns/iter 0.90
Pointer_Walker_Schema_ISO_Language 5657198.330000029 ns/iter 8169762.461537362 ns/iter 0.69
Schema_Frame_WoT_References 6636765.236559464 ns/iter 9496732.773335073 ns/iter 0.70
Schema_Frame_OMC_References 34238432.83333857 ns/iter 45807786.76471281 ns/iter 0.75
Schema_Frame_OMC_Locations 37147423.263161875 ns/iter 36177791.66667232 ns/iter 1.03
Schema_Frame_ISO_Language_Locations 123525034.83331627 ns/iter 128152825.00000648 ns/iter 0.96
Schema_Iterator_ISO_Language 2329712.0775512257 ns/iter 2959912.644787244 ns/iter 0.79
Schema_Frame_ISO_Language_Locations_To_JSON 124088916.79997396 ns/iter 112505374.99999307 ns/iter 1.10
Schema_Tracker_ISO_Language 50291601.21429348 ns/iter 52790370.89999293 ns/iter 0.95
Schema_Tracker_ISO_Language_To_JSON 18752341.1562438 ns/iter 18030144.317075297 ns/iter 1.04
Schema_Format_ISO_Language_To_JSON 139369350.0000154 ns/iter 129631541.60006526 ns/iter 1.08
Schema_Bundle_Meta_2020_12 2346570.374254021 ns/iter 2042127.6954192272 ns/iter 1.15
Schema_Frame_Many_Resources_References 320083208.0000282 ns/iter 271407041.6667103 ns/iter 1.18
Alterschema_Check_Readibility_ISO_Language_Set_3 233857222.333351 ns/iter 228725444.3333495 ns/iter 1.02
Alterschema_Check_Readibility_OMC 42787387.76922463 ns/iter 42657208.31249098 ns/iter 1.00
Alterschema_Apply_Readibility_KrakenD 26366437791.999943 ns/iter
EditorSchema_ForEditor_EmbeddedResources 16399954.723389803 ns/iter 13056447.48000759 ns/iter 1.26
URITemplateRouter_Create 22892.620273796863 ns/iter 17446.05815366305 ns/iter 1.31
URITemplateRouter_Match 206.1241469519097 ns/iter 187.0982359107445 ns/iter 1.10
URITemplateRouterView_Restore 13681.256831192166 ns/iter 9902.950042226454 ns/iter 1.38
URITemplateRouterView_Match 137.63166031206273 ns/iter 114.68986017142933 ns/iter 1.20

This comment was automatically generated by workflow using github-action-benchmark.

Copy link

@github-actions github-actions bot left a 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: 3b1db5f Previous: 421f999 Ratio
Regex_Lower_S_Or_Upper_S_Asterisk 2.7153266746331854 ns/iter 2.538362235765262 ns/iter 1.07
Regex_Caret_Lower_S_Or_Upper_S_Asterisk_Dollar 2.711809006708447 ns/iter 2.3946393064418747 ns/iter 1.13
Regex_Period_Asterisk 2.873458942188135 ns/iter 2.6373503701602763 ns/iter 1.09
Regex_Group_Period_Asterisk_Group 2.6349030559769906 ns/iter 2.2355415855381873 ns/iter 1.18
Regex_Period_Plus 2.6437639442849337 ns/iter 2.638563477600102 ns/iter 1.00
Regex_Period 2.5639259114341963 ns/iter 2.334657118975744 ns/iter 1.10
Regex_Caret_Period_Plus_Dollar 2.608765340656587 ns/iter 2.340092872355974 ns/iter 1.11
Regex_Caret_Group_Period_Plus_Group_Dollar 2.610838321214059 ns/iter 2.3260780120922133 ns/iter 1.12
Regex_Caret_Period_Asterisk_Dollar 2.322602981930711 ns/iter 2.2488886886498167 ns/iter 1.03
Regex_Caret_Group_Period_Asterisk_Group_Dollar 2.352277217758007 ns/iter 2.34145592817321 ns/iter 1.00
Regex_Caret_X_Hyphen 6.93624297861624 ns/iter 6.954024997335592 ns/iter 1.00
Regex_Period_Md_Dollar 22.998157154579754 ns/iter 23.261094848264516 ns/iter 0.99
Regex_Caret_Slash_Period_Asterisk 5.196482971185886 ns/iter 5.127719672787364 ns/iter 1.01
Regex_Caret_Period_Range_Dollar 2.491771395217344 ns/iter 2.338978989968072 ns/iter 1.07
Regex_Nested_Backtrack 51.548592516283534 ns/iter 47.69833702241328 ns/iter 1.08
JSON_Array_Of_Objects_Unique 305.4828999966023 ns/iter 309.6954863481747 ns/iter 0.99
JSON_Parse_1 27122.766646509877 ns/iter 27733.28243880694 ns/iter 0.98
JSON_Parse_Real 27159.007312758367 ns/iter 26856.506406400935 ns/iter 1.01
JSON_Parse_Decimal 299218.62814161513 ns/iter 269207.2711115809 ns/iter 1.11
JSON_Parse_Schema_ISO_Language 19829001.69160631 ns/iter 20245972.801657286 ns/iter 0.98
JSON_Fast_Hash_Helm_Chart_Lock 36.59585541312455 ns/iter 35.875933928451026 ns/iter 1.02
JSON_Equality_Helm_Chart_Lock 133.69372688223436 ns/iter 132.2263530967478 ns/iter 1.01
JSON_String_Equal/10 6.570234243738908 ns/iter 6.009171209220074 ns/iter 1.09
JSON_String_Equal/100 8.597111214471223 ns/iter 5.680361160300968 ns/iter 1.51
JSON_String_Equal_Small_By_Perfect_Hash/10 0.9308372957984501 ns/iter 0.8175030413037673 ns/iter 1.14
JSON_String_Equal_Small_By_Runtime_Perfect_Hash/10 3.8328195407581767 ns/iter 3.776201617885875 ns/iter 1.01
JSON_String_Fast_Hash/10 2.029045550447595 ns/iter 2.152367828602675 ns/iter 0.94
JSON_String_Fast_Hash/100 2.085735873613058 ns/iter 2.1764255863029067 ns/iter 0.96
JSON_String_Key_Hash/10 1.6592826909211784 ns/iter 1.6123980532016906 ns/iter 1.03
JSON_String_Key_Hash/100 2.799875560473233 ns/iter 2.8541286832070902 ns/iter 0.98
JSON_Object_Defines_Miss_Same_Length 1.9341202516918665 ns/iter 1.9840349451820272 ns/iter 0.97
JSON_Object_Defines_Miss_Too_Small 2.029771198150755 ns/iter 1.959337613670754 ns/iter 1.04
JSON_Object_Defines_Miss_Too_Large 2.167843234224123 ns/iter 1.933320995054789 ns/iter 1.12
Pointer_Object_Traverse 68.1767048271373 ns/iter 54.49620030379024 ns/iter 1.25
Pointer_Object_Try_Traverse 41.31185505076473 ns/iter 40.94331347776082 ns/iter 1.01
Pointer_Push_Back_Pointer_To_Weak_Pointer 181.88193483004645 ns/iter 165.20322169548302 ns/iter 1.10
Pointer_Walker_Schema_ISO_Language 5511582.98145641 ns/iter 4237843.884362115 ns/iter 1.30
Schema_Frame_WoT_References 6245057.537870587 ns/iter 5382371.671272047 ns/iter 1.16
Schema_Frame_OMC_References 37467320.76009115 ns/iter 36011377.9703776 ns/iter 1.04
Schema_Frame_OMC_Locations 32193853.7416004 ns/iter 38267737.940738074 ns/iter 0.84
Schema_Frame_ISO_Language_Locations 120224157.9691569 ns/iter 135039806.3659668 ns/iter 0.89
Schema_Iterator_ISO_Language 2010840.891463511 ns/iter 2404935.8983193673 ns/iter 0.84
Schema_Frame_ISO_Language_Locations_To_JSON 161233961.58218384 ns/iter 206788380.94075522 ns/iter 0.78
Schema_Tracker_ISO_Language 40303272.359511435 ns/iter 54850084.441048756 ns/iter 0.73
Schema_Tracker_ISO_Language_To_JSON 41981193.75440809 ns/iter 32003684.4773726 ns/iter 1.31
Schema_Format_ISO_Language_To_JSON 222515821.45690918 ns/iter 152595579.62417603 ns/iter 1.46
Schema_Bundle_Meta_2020_12 2746894.8282747185 ns/iter 2118266.6034818445 ns/iter 1.30
Schema_Frame_Many_Resources_References 583209991.4550781 ns/iter 633919000.6256104 ns/iter 0.92
Alterschema_Check_Readibility_ISO_Language_Set_3 323679447.17407227 ns/iter 237718164.92080688 ns/iter 1.36
Alterschema_Check_Readibility_OMC 65090239.04800415 ns/iter 38215994.8348999 ns/iter 1.70
Alterschema_Apply_Readibility_KrakenD 25484850406.64673 ns/iter
EditorSchema_ForEditor_EmbeddedResources 11989814.894539969 ns/iter 12670243.779818216 ns/iter 0.95
URITemplateRouter_Create 14612.0549176716 ns/iter 14657.953810934467 ns/iter 1.00
URITemplateRouter_Match 177.14283545741276 ns/iter 187.30550185196535 ns/iter 0.95
URITemplateRouterView_Restore 9581.156598245014 ns/iter 10376.514858740718 ns/iter 0.92
URITemplateRouterView_Match 120.62726531419774 ns/iter 111.30023612586493 ns/iter 1.08

This comment was automatically generated by workflow using github-action-benchmark.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants