Skip to content

FunctorCache cleanup

Christoph Hasse requested to merge chasse_functorcache_cleanup into master

We currently still build many functor caches, which are all independently created. This costs quite a bit of time during the build.
So I went on to double-check how many functors are included in multiple functor caches, and the result is below:

Dump of the overlap check I ran:

Moore_FunctorCache_Hlt1_hlt1_smog_example.components has 6 functors, let's check overlap:
Moore_FunctorCache_Hlt1_hlt1_pp_comparison.components has 20 functors, let's check overlap:
Moore_FunctorCache_Hlt1_hlt1_pp_comparison.components has 19 functors overlap with Moore_FunctorCache_Hlt1_hlt1_pp_default.components
Moore_FunctorCache_Hlt1_hlt1_pp_default.components has 23 functors, let's check overlap:
Moore_FunctorCache_Hlt1_hlt1_pp_default.components has 19 functors overlap with Moore_FunctorCache_Hlt1_hlt1_pp_comparison.components
Moore_FunctorCache_Hlt2_tests_options_hlt2_combinations_particle_v2.components has 9 functors, let's check overlap:
Moore_FunctorCache_Hlt2_tests_options_hlt2_combinations_particle_v2.components has 1 functors overlap with Moore_FunctorCache_Hlt2_options_run_starterkit_bs_to_jpsiphi.components
Moore_FunctorCache_Hlt2_tests_options_hlt2_combinations_particle_v2.components has 3 functors overlap with Moore_FunctorCache_Hlt2_tests_options_hlt2_reco_plus_thor_selections.components
Moore_FunctorCache_Hlt2_tests_options_hlt2_combinations_particle_v2.components has 3 functors overlap with Moore_FunctorCache_Hlt2_tests_options_thor_loki_comparison.components
Moore_FunctorCache_Hlt2_tests_options_hlt2_combinations_particle_v2.components has 2 functors overlap with Moore_FunctorCache_Hlt2_options_hlt2_pp_default.components
Moore_FunctorCache_Hlt2_options_run_starterkit_bs_to_jpsiphi.components has 17 functors, let's check overlap:
Moore_FunctorCache_Hlt2_options_run_starterkit_bs_to_jpsiphi.components has 1 functors overlap with Moore_FunctorCache_Hlt2_tests_options_hlt2_combinations_particle_v2.components
Moore_FunctorCache_Hlt2_options_run_starterkit_bs_to_jpsiphi.components has 2 functors overlap with Moore_FunctorCache_Hlt2_tests_options_hlt2_reco_plus_thor_selections.components
Moore_FunctorCache_Hlt2_options_run_starterkit_bs_to_jpsiphi.components has 1 functors overlap with Moore_FunctorCache_Hlt2_tests_options_thor_loki_comparison.components
Moore_FunctorCache_Hlt2_options_run_starterkit_bs_to_jpsiphi.components has 4 functors overlap with Moore_FunctorCache_Hlt2_options_hlt2_pp_default.components
Moore_FunctorCache_Hlt2_options_run_starterkit_bs_to_jpsiphi.components has 1 functors overlap with Moore_FunctorCache_Hlt2_options_hlt2_pp_thor.components
Moore_FunctorCache_Hlt2_tests_options_hlt2_reco_plus_thor_selections.components has 36 functors, let's check overlap:
Moore_FunctorCache_Hlt2_tests_options_hlt2_reco_plus_thor_selections.components has 3 functors overlap with Moore_FunctorCache_Hlt2_tests_options_hlt2_combinations_particle_v2.components
Moore_FunctorCache_Hlt2_tests_options_hlt2_reco_plus_thor_selections.components has 2 functors overlap with Moore_FunctorCache_Hlt2_options_run_starterkit_bs_to_jpsiphi.components
Moore_FunctorCache_Hlt2_tests_options_hlt2_reco_plus_thor_selections.components has 3 functors overlap with Moore_FunctorCache_Hlt2_tests_options_thor_loki_comparison.components
Moore_FunctorCache_Hlt2_tests_options_hlt2_reco_plus_thor_selections.components has 6 functors overlap with Moore_FunctorCache_Hlt2_options_hlt2_pp_default.components
Moore_FunctorCache_Hlt2_tests_options_hlt2_reco_plus_thor_selections.components has 2 functors overlap with Moore_FunctorCache_Hlt2_options_hlt2_pp_thor.components
Moore_FunctorCache_Hlt2_tests_options_thor_loki_comparison.components has 96 functors, let's check overlap:
Moore_FunctorCache_Hlt2_tests_options_thor_loki_comparison.components has 3 functors overlap with Moore_FunctorCache_Hlt2_tests_options_hlt2_combinations_particle_v2.components
Moore_FunctorCache_Hlt2_tests_options_thor_loki_comparison.components has 1 functors overlap with Moore_FunctorCache_Hlt2_options_run_starterkit_bs_to_jpsiphi.components
Moore_FunctorCache_Hlt2_tests_options_thor_loki_comparison.components has 3 functors overlap with Moore_FunctorCache_Hlt2_tests_options_hlt2_reco_plus_thor_selections.components
Moore_FunctorCache_Hlt2_tests_options_thor_loki_comparison.components has 8 functors overlap with Moore_FunctorCache_Hlt2_options_hlt2_pp_default.components
Moore_FunctorCache_Hlt2_tests_options_thor_loki_comparison.components has 4 functors overlap with Moore_FunctorCache_Hlt2_options_hlt2_pp_thor.components
Moore_FunctorCache_Hlt2_options_hlt2_pp_default.components has 1222 functors, let's check overlap:
Moore_FunctorCache_Hlt2_options_hlt2_pp_default.components has 2 functors overlap with Moore_FunctorCache_Hlt2_tests_options_hlt2_combinations_particle_v2.components
Moore_FunctorCache_Hlt2_options_hlt2_pp_default.components has 4 functors overlap with Moore_FunctorCache_Hlt2_options_run_starterkit_bs_to_jpsiphi.components
Moore_FunctorCache_Hlt2_options_hlt2_pp_default.components has 6 functors overlap with Moore_FunctorCache_Hlt2_tests_options_hlt2_reco_plus_thor_selections.components
Moore_FunctorCache_Hlt2_options_hlt2_pp_default.components has 8 functors overlap with Moore_FunctorCache_Hlt2_tests_options_thor_loki_comparison.components
Moore_FunctorCache_Hlt2_options_hlt2_pp_default.components has 1213 functors overlap with Moore_FunctorCache_Hlt2_options_hlt2_pp_thor.components
Moore_FunctorCache_Hlt2_options_hlt2_pp_thor.components has 1214 functors, let's check overlap:
Moore_FunctorCache_Hlt2_options_hlt2_pp_thor.components has 1 functors overlap with Moore_FunctorCache_Hlt2_options_run_starterkit_bs_to_jpsiphi.components
Moore_FunctorCache_Hlt2_options_hlt2_pp_thor.components has 2 functors overlap with Moore_FunctorCache_Hlt2_tests_options_hlt2_reco_plus_thor_selections.components
Moore_FunctorCache_Hlt2_options_hlt2_pp_thor.components has 4 functors overlap with Moore_FunctorCache_Hlt2_tests_options_thor_loki_comparison.components
Moore_FunctorCache_Hlt2_options_hlt2_pp_thor.components has 1213 functors overlap with Moore_FunctorCache_Hlt2_options_hlt2_pp_default.components

As a conclusion, this MR makes changes to only build hlt1_pp_default and hlt2_pp_thor as those two are the only ones that need complete caches as they are run in the throughput test. The only test that really has a lot of functors and could potentially need a few minutes to JIT is hlt2_pp_default. But this configuration also has a huge overlap with hlt2_pp_thor thus we effectively will only need to JIT a few functors for this configuration.

Edited by Christoph Hasse

Merge request reports