Skip to content

Conditionally apply pre-compilation optimisations#531

Merged
jviotti merged 2 commits into
mainfrom
ref-optimisations-from-scratch-solution-3
Oct 20, 2025
Merged

Conditionally apply pre-compilation optimisations#531
jviotti merged 2 commits into
mainfrom
ref-optimisations-from-scratch-solution-3

Conversation

@jviotti
Copy link
Copy Markdown
Member

@jviotti jviotti commented Oct 20, 2025

No description provided.

Copy link
Copy Markdown

@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: 993be98 Previous: d1d7f9d Ratio
E2E_Compiler_adaptivecard 2834288893.9999967 ns/iter 48575837709.99998 ns/iter 0.05834771004713977
E2E_Compiler_ansible_meta 63231853.1818121 ns/iter 87392813.7500002 ns/iter 0.72
E2E_Compiler_aws_cdk 1188708.2316866985 ns/iter 1157116.2786070174 ns/iter 1.03
E2E_Compiler_babelrc 11476971.416666023 ns/iter 11328292.04838649 ns/iter 1.01
E2E_Compiler_clang_format 51198544.42857071 ns/iter 50829386.92857348 ns/iter 1.01
E2E_Compiler_cmake_presets 1575004991.99989 ns/iter 1577439861.0000162 ns/iter 1.00
E2E_Compiler_code_climate 7832406.91111031 ns/iter 7778886.1460671695 ns/iter 1.01
E2E_Compiler_cql2 227014232.66668522 ns/iter 6173274886.999991 ns/iter 0.036773711979802455
E2E_Compiler_cspell 234862779.0000061 ns/iter 635813419.9999768 ns/iter 0.37
E2E_Compiler_cypress 29146780.291668504 ns/iter 28726832.875001665 ns/iter 1.01
E2E_Compiler_deno 26498909.46153951 ns/iter 26114319.074075088 ns/iter 1.01
E2E_Compiler_dependabot 11196621.225807238 ns/iter 11035821.253968274 ns/iter 1.01
E2E_Compiler_draft_04 54734081.615387924 ns/iter 11046493.222222254 ns/iter 4.95
E2E_Compiler_fabric_mod 22855703.677420583 ns/iter 22446780.838709313 ns/iter 1.02
E2E_Compiler_geojson 55275659.499992944 ns/iter 54283096.15384618 ns/iter 1.02
E2E_Compiler_gitpod_configuration 23786577.413794667 ns/iter 23373354.16666709 ns/iter 1.02
E2E_Compiler_helm_chart_lock 4311222.294478547 ns/iter 4316077.396341404 ns/iter 1.00
E2E_Compiler_importmap 1565464.4237665788 ns/iter 1592578.9578713477 ns/iter 0.98
E2E_Compiler_jasmine 5309599.953845743 ns/iter 5300005.692307562 ns/iter 1.00
E2E_Compiler_jshintrc 15762968.044444077 ns/iter 15439093.688889392 ns/iter 1.02
E2E_Compiler_jsconfig 57607810.416669734 ns/iter 56764571.08332992 ns/iter 1.01
E2E_Compiler_krakend 739088467.9999772 ns/iter 1188991387.000044 ns/iter 0.62
E2E_Compiler_lazygit 109112061.50001363 ns/iter 109548139.99999638 ns/iter 1.00
E2E_Compiler_lerna 5862066.63559316 ns/iter 5895287.108333492 ns/iter 0.99
E2E_Compiler_nest_cli 33522693.380957335 ns/iter 33512367.047619376 ns/iter 1.00
E2E_Compiler_omc 2783397755.00001 ns/iter 27969011781.000008 ns/iter 0.09951720056447744
E2E_Compiler_omnisharp 19365544.0555555 ns/iter 19072398.270269774 ns/iter 1.02
E2E_Compiler_openapi 1492523298.0000374 ns/iter 25167021875.999977 ns/iter 0.05930472446655884
E2E_Compiler_pre_commit_hooks 9017943.32467536 ns/iter 8981224.35897437 ns/iter 1.00
E2E_Compiler_pulumi 15153724.565216772 ns/iter 14876370.404254992 ns/iter 1.02
E2E_Compiler_semantic_release 4298616.403614452 ns/iter 4171945.2934131767 ns/iter 1.03
E2E_Compiler_stale 4308098.159509271 ns/iter 4324732.0736198975 ns/iter 1.00
E2E_Compiler_stylecop 16634095.071427032 ns/iter 16462972.767442351 ns/iter 1.01
E2E_Compiler_tmuxinator 5761483.338842895 ns/iter 5731925.721311311 ns/iter 1.01
E2E_Compiler_ui5 340299119.5000027 ns/iter 384345603.5000088 ns/iter 0.89
E2E_Compiler_ui5_manifest 4429073264.999943 ns/iter 61011481400.00004 ns/iter 0.07259409480589894
E2E_Compiler_unreal_engine_uproject 16899822.878050454 ns/iter 16662453.404761449 ns/iter 1.01
E2E_Compiler_vercel 55249323.230773725 ns/iter 54354936.99999719 ns/iter 1.02
E2E_Compiler_yamllint 7237617.4791664025 ns/iter 7248386.680412319 ns/iter 1.00
E2E_Evaluator_adaptivecard 52691.629766667764 ns/iter 36449.639226916115 ns/iter 1.45
E2E_Evaluator_ansible_meta 322999.052169891 ns/iter 322825.6368663499 ns/iter 1.00
E2E_Evaluator_aws_cdk 66716.6509792706 ns/iter 67763.56006587938 ns/iter 0.98
E2E_Evaluator_babelrc 157098.769919441 ns/iter 159125.8086447613 ns/iter 0.99
E2E_Evaluator_clang_format 135619.12601156184 ns/iter 136869.1597412753 ns/iter 0.99
E2E_Evaluator_cmake_presets 5279603.137404842 ns/iter 5127629.544118156 ns/iter 1.03
E2E_Evaluator_code_climate 271427.39230170264 ns/iter 269324.23659674136 ns/iter 1.01
E2E_Evaluator_cql2 273705.9194998292 ns/iter 186929.09264745767 ns/iter 1.46
E2E_Evaluator_cspell 989046.7773049478 ns/iter 967171.8062234715 ns/iter 1.02
E2E_Evaluator_cypress 227716.8920065028 ns/iter 230218.58316895633 ns/iter 0.99
E2E_Evaluator_deno 565179.7719580573 ns/iter 574107.459637502 ns/iter 0.98
E2E_Evaluator_dependabot 542048.469356081 ns/iter 552695.1166797205 ns/iter 0.98
E2E_Evaluator_draft_04 8951517.939024365 ns/iter 8898486.933333818 ns/iter 1.01
E2E_Evaluator_fabric_mod 1244339.1433692905 ns/iter 1262632.7919708379 ns/iter 0.99
E2E_Evaluator_geojson 25073949.357139975 ns/iter 24435745.862068996 ns/iter 1.03
E2E_Evaluator_gitpod_configuration 327641.47545583575 ns/iter 316077.367071524 ns/iter 1.04
E2E_Evaluator_helm_chart_lock 440400.6271821053 ns/iter 428132.64963502466 ns/iter 1.03
E2E_Evaluator_importmap 69260.21016027206 ns/iter 65380.223851510986 ns/iter 1.06
E2E_Evaluator_jasmine 160405.15173844656 ns/iter 167144.13897496383 ns/iter 0.96
E2E_Evaluator_jshintrc 1305241.916044784 ns/iter 1327466.176691705 ns/iter 0.98
E2E_Evaluator_jsconfig 676962.8173828312 ns/iter 680692.905458143 ns/iter 0.99
E2E_Evaluator_krakend 333453.9368065439 ns/iter 332459.36824647215 ns/iter 1.00
E2E_Evaluator_lazygit 214905.4392350683 ns/iter 208945.14141103596 ns/iter 1.03
E2E_Evaluator_lerna 192335.63114752807 ns/iter 193768.37375963407 ns/iter 0.99
E2E_Evaluator_nest_cli 250399.74847504756 ns/iter 248923.11312057363 ns/iter 1.01
E2E_Evaluator_omc 30429.93382982516 ns/iter 30851.443150088387 ns/iter 0.99
E2E_Evaluator_omnisharp 703773.2595574263 ns/iter 709686.2953629614 ns/iter 0.99
E2E_Evaluator_openapi 19007388.62499907 ns/iter 16528191.374999324 ns/iter 1.15
E2E_Evaluator_pre_commit_hooks 601030.5811966459 ns/iter 582983.2222222044 ns/iter 1.03
E2E_Evaluator_pulumi 832569.3818616328 ns/iter 847623.5363748084 ns/iter 0.98
E2E_Evaluator_semantic_release 135028.66395191793 ns/iter 136247.69638321246 ns/iter 0.99
E2E_Evaluator_stale 164206.17997198884 ns/iter 170087.70435413273 ns/iter 0.97
E2E_Evaluator_stylecop 515511.5348147606 ns/iter 494364.08142842737 ns/iter 1.04
E2E_Evaluator_tmuxinator 131921.30085959987 ns/iter 132506.0531574006 ns/iter 1.00
E2E_Evaluator_ui5 770244.8612021751 ns/iter 755047.7327585808 ns/iter 1.02
E2E_Evaluator_ui5_manifest 4867219.078125373 ns/iter 4688516.340000508 ns/iter 1.04
E2E_Evaluator_unreal_engine_uproject 685685.4730877838 ns/iter 640607.7161055618 ns/iter 1.07
E2E_Evaluator_vercel 387986.7051638383 ns/iter 381649.05194807117 ns/iter 1.02
E2E_Evaluator_yamllint 16045.527433710457 ns/iter 14058.776578436164 ns/iter 1.14
Micro_Draft4_Meta_1_No_Callback 273.645122190707 ns/iter 286.83019427364945 ns/iter 0.95
Micro_Draft4_Required_Properties 666.6945499618447 ns/iter 679.7537878165956 ns/iter 0.98
Micro_Draft4_Many_Optional_Properties_Minimal_Match 32.833846392724325 ns/iter 33.338537194451455 ns/iter 0.98
Micro_Draft4_Few_Optional_Properties_Minimal_Match 14.940343971012561 ns/iter 13.079375965142326 ns/iter 1.14
Micro_Draft4_Items_Schema 617.1915095490854 ns/iter 603.1867074115424 ns/iter 1.02
Micro_Draft4_Nested_Object 6.226836861864565 ns/iter 4.66460037469509 ns/iter 1.33
Micro_Draft4_Properties_Triad_Optional 889.884119691219 ns/iter 927.6086560207655 ns/iter 0.96
Micro_Draft4_Properties_Triad_Closed 706.8821158385996 ns/iter 730.7279561139878 ns/iter 0.97
Micro_Draft4_Properties_Triad_Required 896.201411994767 ns/iter 960.3619970876194 ns/iter 0.93
Micro_Draft4_Properties_Closed 86.34073256806172 ns/iter 83.60327671441955 ns/iter 1.03
Micro_Draft4_Non_Recursive_Ref 33.91658640867948 ns/iter 28.329897892493136 ns/iter 1.20
Micro_Draft4_Pattern_Properties_True 244.5978706305456 ns/iter 255.21517250261985 ns/iter 0.96
Micro_Draft4_Ref_To_Single_Property 14.937174322468024 ns/iter 13.387979512255168 ns/iter 1.12
Micro_Draft4_Additional_Properties_Type 62.83626897879756 ns/iter 52.8729727007263 ns/iter 1.19
Micro_Draft4_Nested_Oneof 86.8258678475672 ns/iter 87.16273369274464 ns/iter 1.00
Micro_Draft4_Short_Enum 18.056024569621577 ns/iter 16.277820712992654 ns/iter 1.11
Micro_Draft4_Long_Enum 20.86185414836609 ns/iter 18.990278603970758 ns/iter 1.10
Micro_Draft4_Long_Enum_Short_Strings 17.428600873816126 ns/iter 16.22716938140946 ns/iter 1.07
Micro_Draft4_Type_Object 11.822734743424748 ns/iter 9.966390074022918 ns/iter 1.19
Micro_Draft4_Ref_Single_100 16336730.697672509 ns/iter 16891951.64286026 ns/iter 0.97
Micro_Draft4_Ref_Many_Nested 10221497725.000063 ns/iter
Micro_Draft6_Property_Names 128.48423272956714 ns/iter 118.7304285765349 ns/iter 1.08
Micro_Draft7_If_Then_Else 40.4660550453363 ns/iter 39.52198348984669 ns/iter 1.02
Micro_2019_09_Unevaluated_Properties 57.846058609115204 ns/iter 52.69620344626163 ns/iter 1.10
Micro_2020_12_Dynamic_Ref 536.676272080153 ns/iter 621.8383682523847 ns/iter 0.86
Micro_2020_12_Dynamic_Ref_Single 11.52192060930348 ns/iter 9.964064900158622 ns/iter 1.16

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

Copy link
Copy Markdown

@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: 993be98 Previous: d1d7f9d Ratio
E2E_Compiler_adaptivecard 3363656624.999976 ns/iter 56002665540.99994 ns/iter 0.060062437966232514
E2E_Compiler_ansible_meta 90881138.88889085 ns/iter 78896458.33333564 ns/iter 1.15
E2E_Compiler_aws_cdk 1499308.366053258 ns/iter 1084204.0115273045 ns/iter 1.38
E2E_Compiler_babelrc 13275179.54545411 ns/iter 10223632.633801892 ns/iter 1.30
E2E_Compiler_clang_format 70340628.2307679 ns/iter 46530975.00000361 ns/iter 1.51
E2E_Compiler_cmake_presets 2314498957.9999447 ns/iter 1543867750.000004 ns/iter 1.50
E2E_Compiler_code_climate 10562150.155173076 ns/iter 9458008.522726532 ns/iter 1.12
E2E_Compiler_cql2 214081847.33331835 ns/iter 5319006666.99994 ns/iter 0.0402484638083874
E2E_Compiler_cspell 262437638.99996492 ns/iter 563620291.999996 ns/iter 0.47
E2E_Compiler_cypress 38454274.15789297 ns/iter 33100175.6956529 ns/iter 1.16
E2E_Compiler_deno 30747186.52380527 ns/iter 26426075.307693526 ns/iter 1.16
E2E_Compiler_dependabot 11416498.526317123 ns/iter 10487573.076922601 ns/iter 1.09
E2E_Compiler_draft_04 57662819.41667255 ns/iter 13646693.491525292 ns/iter 4.23
E2E_Compiler_fabric_mod 20761840.705882363 ns/iter 19915598.129031304 ns/iter 1.04
E2E_Compiler_geojson 64415604.19999633 ns/iter 67021125.00000605 ns/iter 0.96
E2E_Compiler_gitpod_configuration 20809131.303029504 ns/iter 28102140.44444382 ns/iter 0.74
E2E_Compiler_helm_chart_lock 3881872.9356435006 ns/iter 5191495.706349593 ns/iter 0.75
E2E_Compiler_importmap 1546438.8349514992 ns/iter 1540686.30344823 ns/iter 1.00
E2E_Compiler_jasmine 7420431.988505479 ns/iter 7262428.160919595 ns/iter 1.02
E2E_Compiler_jshintrc 25229304.5862071 ns/iter 18895333.33333462 ns/iter 1.34
E2E_Compiler_jsconfig 109985864.62500271 ns/iter 78092808.29999353 ns/iter 1.41
E2E_Compiler_krakend 1085681874.9999776 ns/iter 1384712917.0000017 ns/iter 0.78
E2E_Compiler_lazygit 165304758.3999978 ns/iter 129273729.1666602 ns/iter 1.28
E2E_Compiler_lerna 7747197.428572116 ns/iter 5536613.212120526 ns/iter 1.40
E2E_Compiler_nest_cli 44382151.785717785 ns/iter 31395679.347823437 ns/iter 1.41
E2E_Compiler_omc 3266256499.9999404 ns/iter 35581284332.999985 ns/iter 0.09179703771880543
E2E_Compiler_omnisharp 19944929.77142792 ns/iter 20247667.763158005 ns/iter 0.99
E2E_Compiler_openapi 1311776000.0000088 ns/iter 27147474999.999985 ns/iter 0.048320368653070295
E2E_Compiler_pre_commit_hooks 8972321.57646934 ns/iter 8223206.8192771375 ns/iter 1.09
E2E_Compiler_pulumi 13652744.490565604 ns/iter 12594957.581818148 ns/iter 1.08
E2E_Compiler_semantic_release 3945273.8549616975 ns/iter 3764865.2849736484 ns/iter 1.05
E2E_Compiler_stale 4507952.135135248 ns/iter 4207076.392857191 ns/iter 1.07
E2E_Compiler_stylecop 16365510.135132525 ns/iter 17499077.913043946 ns/iter 0.94
E2E_Compiler_tmuxinator 5921389.492753577 ns/iter 5428595.829999949 ns/iter 1.09
E2E_Compiler_ui5 388487583.49996614 ns/iter 424264687.4999991 ns/iter 0.92
E2E_Compiler_ui5_manifest 5293177666.00002 ns/iter 62336644458.00002 ns/iter 0.08491277822254861
E2E_Compiler_unreal_engine_uproject 19387582.142855663 ns/iter 17208025.236841783 ns/iter 1.13
E2E_Compiler_vercel 63925099.30769673 ns/iter 60395701.92308474 ns/iter 1.06
E2E_Compiler_yamllint 7761174.792682229 ns/iter 8945850.482352987 ns/iter 0.87
E2E_Evaluator_adaptivecard 42342.40262330807 ns/iter 23447.125971415706 ns/iter 1.81
E2E_Evaluator_ansible_meta 214113.33161408154 ns/iter 199665.0686492055 ns/iter 1.07
E2E_Evaluator_aws_cdk 43499.53691155455 ns/iter 42681.52075127981 ns/iter 1.02
E2E_Evaluator_babelrc 110728.17970661231 ns/iter 103916.83338275524 ns/iter 1.07
E2E_Evaluator_clang_format 98911.1087582796 ns/iter 95600.287909691 ns/iter 1.03
E2E_Evaluator_cmake_presets 6926514.344262032 ns/iter 3947572.393749965 ns/iter 1.75
E2E_Evaluator_code_climate 189772.64333447115 ns/iter 166836.35934920106 ns/iter 1.14
E2E_Evaluator_cql2 177749.15596778484 ns/iter 111553.1002285428 ns/iter 1.59
E2E_Evaluator_cspell 647460.0774058948 ns/iter 606334.5440142158 ns/iter 1.07
E2E_Evaluator_cypress 156616.79856851604 ns/iter 146018.52523593506 ns/iter 1.07
E2E_Evaluator_deno 379162.324697729 ns/iter 377397.15970775153 ns/iter 1.00
E2E_Evaluator_dependabot 357645.6969365348 ns/iter 364236.4227435225 ns/iter 0.98
E2E_Evaluator_draft_04 5664996.2090907805 ns/iter 5535479.838710539 ns/iter 1.02
E2E_Evaluator_fabric_mod 1443410.846153755 ns/iter 1448646.8940680295 ns/iter 1.00
E2E_Evaluator_geojson 14604389.448979363 ns/iter 14638197.702129701 ns/iter 1.00
E2E_Evaluator_gitpod_configuration 209198.3785407624 ns/iter 194074.88932919502 ns/iter 1.08
E2E_Evaluator_helm_chart_lock 314327.24094284733 ns/iter 250993.33776503053 ns/iter 1.25
E2E_Evaluator_importmap 44958.74287860664 ns/iter 39916.20180808848 ns/iter 1.13
E2E_Evaluator_jasmine 113287.51159697802 ns/iter 100528.68941483423 ns/iter 1.13
E2E_Evaluator_jshintrc 1275540.4433566863 ns/iter 922259.3137253046 ns/iter 1.38
E2E_Evaluator_jsconfig 614262.7499999662 ns/iter 474801.93500333326 ns/iter 1.29
E2E_Evaluator_krakend 324994.12716764293 ns/iter 212311.07601652044 ns/iter 1.53
E2E_Evaluator_lazygit 163778.55805244614 ns/iter 129897.05288914836 ns/iter 1.26
E2E_Evaluator_lerna 186483.31462074592 ns/iter 122191.06230975254 ns/iter 1.53
E2E_Evaluator_nest_cli 178526.05740183228 ns/iter 148093.44020250137 ns/iter 1.21
E2E_Evaluator_omc 23994.438850066872 ns/iter 20803.479989449264 ns/iter 1.15
E2E_Evaluator_omnisharp 466238.7518152119 ns/iter 436205.5705843357 ns/iter 1.07
E2E_Evaluator_openapi 9973211.3623192 ns/iter 14153779.500001444 ns/iter 0.70
E2E_Evaluator_pre_commit_hooks 370027.1694825914 ns/iter 463234.62211666885 ns/iter 0.80
E2E_Evaluator_pulumi 555997.2847949264 ns/iter 690836.9795159757 ns/iter 0.80
E2E_Evaluator_semantic_release 92771.6104298458 ns/iter 116671.01004940625 ns/iter 0.80
E2E_Evaluator_stale 110941.94771038293 ns/iter 133361.18922350853 ns/iter 0.83
E2E_Evaluator_stylecop 368695.302087972 ns/iter 409002.4723502655 ns/iter 0.90
E2E_Evaluator_tmuxinator 91413.53359583647 ns/iter 107314.2911923337 ns/iter 0.85
E2E_Evaluator_ui5 613575.0897298036 ns/iter 780118.116740185 ns/iter 0.79
E2E_Evaluator_ui5_manifest 3858421.9159661992 ns/iter 3845327.8186272443 ns/iter 1.00
E2E_Evaluator_unreal_engine_uproject 524730.8888076427 ns/iter 539621.5047829901 ns/iter 0.97
E2E_Evaluator_vercel 304644.519238379 ns/iter 339970.49866069265 ns/iter 0.90
E2E_Evaluator_yamllint 11946.367490314758 ns/iter 15422.690606089187 ns/iter 0.77
Micro_Draft4_Meta_1_No_Callback 193.28664041960857 ns/iter 247.33305327909204 ns/iter 0.78
Micro_Draft4_Required_Properties 472.84917845312856 ns/iter 582.0536041808641 ns/iter 0.81
Micro_Draft4_Many_Optional_Properties_Minimal_Match 20.544342724616627 ns/iter 26.39812505699439 ns/iter 0.78
Micro_Draft4_Few_Optional_Properties_Minimal_Match 7.702867321144088 ns/iter 10.085005458520698 ns/iter 0.76
Micro_Draft4_Items_Schema 445.9394070946197 ns/iter 540.3161067349741 ns/iter 0.83
Micro_Draft4_Nested_Object 3.3187961150332925 ns/iter 4.091892348489937 ns/iter 0.81
Micro_Draft4_Properties_Triad_Optional 665.7520321823853 ns/iter 713.0755261086025 ns/iter 0.93
Micro_Draft4_Properties_Triad_Closed 570.5773741877276 ns/iter 598.981716236546 ns/iter 0.95
Micro_Draft4_Properties_Triad_Required 653.500073740759 ns/iter 715.3914443122645 ns/iter 0.91
Micro_Draft4_Properties_Closed 48.73838293624011 ns/iter 52.33265809311161 ns/iter 0.93
Micro_Draft4_Non_Recursive_Ref 20.712933269508678 ns/iter 19.999463832335298 ns/iter 1.04
Micro_Draft4_Pattern_Properties_True 164.1559495044604 ns/iter 154.1812048740697 ns/iter 1.06
Micro_Draft4_Ref_To_Single_Property 8.329503524686091 ns/iter 8.999919958159037 ns/iter 0.93
Micro_Draft4_Additional_Properties_Type 37.572980386808304 ns/iter 36.920588667116384 ns/iter 1.02
Micro_Draft4_Nested_Oneof 59.12229127742239 ns/iter 58.92325475176051 ns/iter 1.00
Micro_Draft4_Short_Enum 10.324514524177289 ns/iter 10.09822457611303 ns/iter 1.02
Micro_Draft4_Long_Enum 24.38797297196241 ns/iter 29.35850485238089 ns/iter 0.83
Micro_Draft4_Long_Enum_Short_Strings 10.780731492859015 ns/iter 19.407323352500295 ns/iter 0.56
Micro_Draft4_Type_Object 5.912873134713249 ns/iter 9.578370176399151 ns/iter 0.62
Micro_Draft4_Ref_Single_100 19205753.472220976 ns/iter 21376835.87878228 ns/iter 0.90
Micro_Draft4_Ref_Many_Nested 8758314541.000004 ns/iter
Micro_Draft6_Property_Names 104.6780322673567 ns/iter 124.47820071395311 ns/iter 0.84
Micro_Draft7_If_Then_Else 33.13707833952152 ns/iter 35.92503629791493 ns/iter 0.92
Micro_2019_09_Unevaluated_Properties 41.905163410007646 ns/iter 45.989825123112176 ns/iter 0.91
Micro_2020_12_Dynamic_Ref 491.29776718941827 ns/iter 526.6382910001539 ns/iter 0.93
Micro_2020_12_Dynamic_Ref_Single 6.8613511450079825 ns/iter 8.14227331481222 ns/iter 0.84

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

@jviotti jviotti force-pushed the ref-optimisations-from-scratch-solution-3 branch from 0a43f94 to 5b731c7 Compare October 20, 2025 01:05
Copy link
Copy Markdown

@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: 993be98 Previous: d1d7f9d Ratio
Micro_2020_12_Dynamic_Ref 617.5823929876517 ns/iter 645.8838611837081 ns/iter 0.96
Micro_2020_12_Dynamic_Ref_Single 10.662978361943408 ns/iter 9.67005204133827 ns/iter 1.10
Micro_2019_09_Unevaluated_Properties 54.18418903651357 ns/iter 53.18379309464795 ns/iter 1.02
Micro_Draft7_If_Then_Else 45.70186539027571 ns/iter 45.207554554917955 ns/iter 1.01
Micro_Draft6_Property_Names 159.09719125085158 ns/iter 164.61534977868553 ns/iter 0.97
Micro_Draft4_Meta_1_No_Callback 241.67826710979222 ns/iter 249.34460678693037 ns/iter 0.97
Micro_Draft4_Required_Properties 572.1258629070828 ns/iter 545.8431954228154 ns/iter 1.05
Micro_Draft4_Many_Optional_Properties_Minimal_Match 30.897116929438017 ns/iter 29.8229421532321 ns/iter 1.04
Micro_Draft4_Few_Optional_Properties_Minimal_Match 12.924883533738095 ns/iter 11.898934847712196 ns/iter 1.09
Micro_Draft4_Items_Schema 500.2868651941042 ns/iter 498.62989157498146 ns/iter 1.00
Micro_Draft4_Nested_Object 6.049641376638938 ns/iter 3.8531130170703523 ns/iter 1.57
Micro_Draft4_Properties_Triad_Optional 1030.0890140524134 ns/iter 1027.612358939022 ns/iter 1.00
Micro_Draft4_Properties_Triad_Closed 819.2763776788618 ns/iter 817.9411238703451 ns/iter 1.00
Micro_Draft4_Properties_Triad_Required 1037.2275973920655 ns/iter 1024.6825761866003 ns/iter 1.01
Micro_Draft4_Properties_Closed 76.16159029707937 ns/iter 75.12534256695125 ns/iter 1.01
Micro_Draft4_Non_Recursive_Ref 13.500220885995917 ns/iter 12.486099938860917 ns/iter 1.08
Micro_Draft4_Pattern_Properties_True 243.8434709129629 ns/iter 244.54852603400587 ns/iter 1.00
Micro_Draft4_Ref_To_Single_Property 13.010068564140054 ns/iter 11.907096289456087 ns/iter 1.09
Micro_Draft4_Additional_Properties_Type 16.31684671723286 ns/iter 14.98438701070524 ns/iter 1.09
Micro_Draft4_Nested_Oneof 114.1468245160434 ns/iter 113.53532932392716 ns/iter 1.01
Micro_Draft4_Short_Enum 18.68749379435438 ns/iter 18.100649997999817 ns/iter 1.03
Micro_Draft4_Long_Enum 22.863680164514243 ns/iter 23.5063052863942 ns/iter 0.97
Micro_Draft4_Long_Enum_Short_Strings 18.686850401280353 ns/iter 18.120246807080193 ns/iter 1.03
Micro_Draft4_Type_Object 10.708764000104953 ns/iter 9.648085644519197 ns/iter 1.11
Micro_Draft4_Ref_Single_100 17167770.87804852 ns/iter 17594662.050001375 ns/iter 0.98
Micro_Draft4_Ref_Many_Nested 10634746534.000101 ns/iter
E2E_Compiler_adaptivecard 2855388339.000001 ns/iter 51748265954.99996 ns/iter 0.05517843518627335
E2E_Compiler_ansible_meta 65673220.27272191 ns/iter 95943320.14286724 ns/iter 0.68
E2E_Compiler_aws_cdk 1267909.9692585808 ns/iter 1266834.5252708464 ns/iter 1.00
E2E_Compiler_babelrc 12149878.561403008 ns/iter 12197172.931033446 ns/iter 1.00
E2E_Compiler_clang_format 54819069.23077636 ns/iter 55754742.23076946 ns/iter 0.98
E2E_Compiler_cmake_presets 1691216728.0000858 ns/iter 1711628650.0000796 ns/iter 0.99
E2E_Compiler_code_climate 8497877.878049046 ns/iter 8531199.25609712 ns/iter 1.00
E2E_Compiler_cql2 254633415.33334947 ns/iter 7252309305.00004 ns/iter 0.03511066677172673
E2E_Compiler_cspell 247755260.99998996 ns/iter 684516873.0001205 ns/iter 0.36
E2E_Compiler_cypress 31003911.999999654 ns/iter 31458435.4782611 ns/iter 0.99
E2E_Compiler_deno 28056225.44000016 ns/iter 28585748.559999045 ns/iter 0.98
E2E_Compiler_dependabot 12053713.879311088 ns/iter 12092436.293105023 ns/iter 1.00
E2E_Compiler_draft_04 59141662.91665879 ns/iter 12154522.49999967 ns/iter 4.87
E2E_Compiler_fabric_mod 23886184.1034483 ns/iter 24570748.137930736 ns/iter 0.97
E2E_Compiler_geojson 59835039.33333623 ns/iter 64586421.72726121 ns/iter 0.93
E2E_Compiler_gitpod_configuration 25029489.35714195 ns/iter 25221482.500001002 ns/iter 0.99
E2E_Compiler_helm_chart_lock 4557583.798701116 ns/iter 4579465.756580104 ns/iter 1.00
E2E_Compiler_importmap 1651386.9507041352 ns/iter 1664779.4549761876 ns/iter 0.99
E2E_Compiler_jasmine 5728851.707317517 ns/iter 5755676.385247245 ns/iter 1.00
E2E_Compiler_jshintrc 16706734.047618607 ns/iter 16783688.928572223 ns/iter 1.00
E2E_Compiler_jsconfig 60847439.999995664 ns/iter 62537861.09091792 ns/iter 0.97
E2E_Compiler_krakend 773491194.0000302 ns/iter 1276776178.9998531 ns/iter 0.61
E2E_Compiler_lazygit 116454060.66666435 ns/iter 121843973.00003032 ns/iter 0.96
E2E_Compiler_lerna 6393225.909090977 ns/iter 6401240.642202154 ns/iter 1.00
E2E_Compiler_nest_cli 36127989.84210928 ns/iter 36420332.52632054 ns/iter 0.99
E2E_Compiler_omc 3248271799.9999976 ns/iter 32331773713.000076 ns/iter 0.10
E2E_Compiler_omnisharp 20793425.823529452 ns/iter 20922470.058822535 ns/iter 0.99
E2E_Compiler_openapi 1724375407.9999008 ns/iter 29018139912.000153 ns/iter 0.059424050377770876
E2E_Compiler_pre_commit_hooks 9815352.647887215 ns/iter 9863474.197182242 ns/iter 1.00
E2E_Compiler_pulumi 15981117.363638347 ns/iter 16130183.418607526 ns/iter 0.99
E2E_Compiler_semantic_release 4548815.266234256 ns/iter 4573609.947713706 ns/iter 0.99
E2E_Compiler_stale 4616268.907894712 ns/iter 4646053.193332591 ns/iter 0.99
E2E_Compiler_stylecop 17694868.399999566 ns/iter 17815604.1025688 ns/iter 0.99
E2E_Compiler_tmuxinator 6263025.758928263 ns/iter 6284511.214285463 ns/iter 1.00
E2E_Compiler_ui5 356539138.49995434 ns/iter 414922980.0000285 ns/iter 0.86
E2E_Compiler_ui5_manifest 4712472052.000067 ns/iter 64611200129.00005 ns/iter 0.07293583840868673
E2E_Compiler_unreal_engine_uproject 17909064.564101312 ns/iter 18020007.487178028 ns/iter 0.99
E2E_Compiler_vercel 58251923.33333954 ns/iter 59545504.0000085 ns/iter 0.98
E2E_Compiler_yamllint 7990524.477272422 ns/iter 8114236.465115578 ns/iter 0.98
E2E_Evaluator_adaptivecard 56419.284884663095 ns/iter 34404.989925532325 ns/iter 1.64
E2E_Evaluator_ansible_meta 314370.1368326558 ns/iter 309113.94593403913 ns/iter 1.02
E2E_Evaluator_aws_cdk 56274.908199135665 ns/iter 55966.54557032708 ns/iter 1.01
E2E_Evaluator_babelrc 141941.62926336488 ns/iter 139643.8609098227 ns/iter 1.02
E2E_Evaluator_clang_format 105465.59255318716 ns/iter 100526.56004636659 ns/iter 1.05
E2E_Evaluator_cmake_presets 4995533.897058254 ns/iter 5958265.539682485 ns/iter 0.84
E2E_Evaluator_code_climate 224349.21865052945 ns/iter 219006.64945567833 ns/iter 1.02
E2E_Evaluator_cql2 285771.71557005006 ns/iter 188483.90426943896 ns/iter 1.52
E2E_Evaluator_cspell 1043744.0476899758 ns/iter 1045743.5029761222 ns/iter 1.00
E2E_Evaluator_cypress 170110.2607847764 ns/iter 169130.27161677464 ns/iter 1.01
E2E_Evaluator_deno 562754.2053571491 ns/iter 566775.0351594858 ns/iter 0.99
E2E_Evaluator_dependabot 473573.25700612727 ns/iter 462506.5059760308 ns/iter 1.02
E2E_Evaluator_draft_04 7093898.130434533 ns/iter 9321874.797470178 ns/iter 0.76
E2E_Evaluator_fabric_mod 1370648.8529411377 ns/iter 1324707.7552579734 ns/iter 1.03
E2E_Evaluator_geojson 21386113.787877657 ns/iter 21306455.27272739 ns/iter 1.00
E2E_Evaluator_gitpod_configuration 289941.1842863015 ns/iter 285971.2673993317 ns/iter 1.01
E2E_Evaluator_helm_chart_lock 348673.51367482217 ns/iter 338131.2497579803 ns/iter 1.03
E2E_Evaluator_importmap 59191.477244056536 ns/iter 56707.787602480756 ns/iter 1.04
E2E_Evaluator_jasmine 140884.1221774308 ns/iter 137628.12600271186 ns/iter 1.02
E2E_Evaluator_jshintrc 954428.3489011643 ns/iter 947092.8600542858 ns/iter 1.01
E2E_Evaluator_jsconfig 689900.6949153449 ns/iter 687053.2623275915 ns/iter 1.00
E2E_Evaluator_krakend 323334.28247800906 ns/iter 329487.17865431414 ns/iter 0.98
E2E_Evaluator_lazygit 194096.20837837495 ns/iter 191031.75621753672 ns/iter 1.02
E2E_Evaluator_lerna 145035.8753690419 ns/iter 140760.05179360253 ns/iter 1.03
E2E_Evaluator_nest_cli 226363.17561918186 ns/iter 223377.96216220158 ns/iter 1.01
E2E_Evaluator_omc 28701.926595786794 ns/iter 28775.429495842494 ns/iter 1.00
E2E_Evaluator_omnisharp 551784.7012578481 ns/iter 535271.0420168662 ns/iter 1.03
E2E_Evaluator_openapi 15562697.499999247 ns/iter 18681246.7297288 ns/iter 0.83
E2E_Evaluator_pre_commit_hooks 622861.6391597659 ns/iter 522328.251117673 ns/iter 1.19
E2E_Evaluator_pulumi 816422.6972157817 ns/iter 812538.7409144138 ns/iter 1.00
E2E_Evaluator_semantic_release 133737.36781607862 ns/iter 134875.1347693398 ns/iter 0.99
E2E_Evaluator_stale 142369.24907974774 ns/iter 146396.40032447834 ns/iter 0.97
E2E_Evaluator_stylecop 509938.0670102939 ns/iter 518475.2815249337 ns/iter 0.98
E2E_Evaluator_tmuxinator 125699.76508504442 ns/iter 129838.90088465688 ns/iter 0.97
E2E_Evaluator_ui5 753868.1049784146 ns/iter 755969.0593312286 ns/iter 1.00
E2E_Evaluator_ui5_manifest 4834467.572413814 ns/iter 5392891.477878095 ns/iter 0.90
E2E_Evaluator_unreal_engine_uproject 690336.0466269858 ns/iter 691653.9236110494 ns/iter 1.00
E2E_Evaluator_vercel 342693.6007865854 ns/iter 342899.785820502 ns/iter 1.00
E2E_Evaluator_yamllint 13458.171740257438 ns/iter 12349.086635816744 ns/iter 1.09

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

@jviotti jviotti force-pushed the ref-optimisations-from-scratch-solution-3 branch 6 times, most recently from c858122 to fb75fa1 Compare October 20, 2025 04:22
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
@jviotti jviotti force-pushed the ref-optimisations-from-scratch-solution-3 branch 2 times, most recently from fc13369 to 75ac7d3 Compare October 20, 2025 12:02
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
@jviotti jviotti force-pushed the ref-optimisations-from-scratch-solution-3 branch from 75ac7d3 to 993be98 Compare October 20, 2025 12:51
@jviotti jviotti changed the title [WIP] Conditionally apply pre-compilation optimisations Conditionally apply pre-compilation optimisations Oct 20, 2025
@jviotti jviotti marked this pull request as ready for review October 20, 2025 13:33
@jviotti jviotti merged commit b877570 into main Oct 20, 2025
13 checks passed
@jviotti jviotti deleted the ref-optimisations-from-scratch-solution-3 branch October 20, 2025 13:34
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.

1 participant