Description
Disclaimer: this issue is mostly for documentation purposes.
TSG has started to investigate possible replacements of the current Configuration DB model for storing HLT menus in view of the Phase 2 upgrade.
One of the possibilities that was discussed, is to fetch the list of configurable parameters uniquely from the auto-generated configuration fragment files that the fillDescriptions
mechanism provides in cmssw
.
At the moment, this is unfortunately not possible as not all the plugins used at HLT have a viable fillDescriptions
implementation that is both :
- providing default values for all the top level parameters.
- generating a
cfi
file in thecfi-python
folder (to be parsed instead of othercfi
files in thepython
directory), seeaddDefault
vsaddWithDefaultLabel
.
In the recent past I have opened a series of PRs to bring the list of outstanding modules down: #47017, #47045, #47079, #47107, #47136, #47191 and #47224, but few remain to be addressed, especially those that either:
- have complicated class inheritance structure (e.g. using algorithm factories)
- take branching decisions (
ifValues
and similar) to populate the defaults of certain parameters depending on the value of others (see also discussion at addfillDescriptions
to several plugins used at HLT (4/N) #47107 (comment) and following).
As of any IB more recent that CMSSW_15_0_X_2025-02-05-1100
, the following script can be used to identify such modules in the Run 3 menu:
-
BTagProbabilityToDiscriminator
-
CSCChannelMapperESProducer
-
CSCIndexerESProducer
-
CaloTopologyBuilder
-
CaloTowersCreator
-
CandIPProducer
-
CandSecondaryVertexProducer
-
DTRecHitProducer
-
DTRecSegment4DProducer
-
DetIdAssociatorESProducer
-
ESRecHitProducer
-
EcalSeverityLevelESProducer
-
EmptyESSource
-
GsfMaterialEffectsESProducer
-
HcalChannelPropertiesEP
-
HcalTimeSlewEP
-
JetTagProducer
-
MuonIdProducer
-
PropagatorWithMaterialESProducer
-
RPCRecHitProducer
-
SecondaryVertexProducer
-
SeedGeneratorFromRegionHitsEDProducer
-
SiPixelTemplateDBObjectESProducer
-
SiStripBackPlaneCorrectionDepESProducer
-
SiStripLorentzAngleDepESProducer
-
SoftLepton
-
StripCPEESProducer
-
TSGFromL2Muon
-
TrackIPProducer
-
TrajectoryCleanerESProducer
While the following script can be used to identify such modules in the Phase 2 menu:
-
CSCChannelMapperESProducer
-
CSCIndexerESProducer
-
CaloTowersCreator
-
CandIPProducer
-
CandSecondaryVertexProducer
-
DTRecHitProducer
-
DTRecSegment4DProducer
-
DetIdAssociatorESProducer
-
EcalSeverityLevelESProducer
-
EmptyESSource
-
GsfMaterialEffectsESProducer
-
HBHEPhase1Reconstructor
-
HGCalRecHitProducer
-
HcalChannelPropertiesEP
-
MuonIdProducer
-
PFCandidateFwdPtrProducer
-
PropagatorWithMaterialESProducer
-
RPCRecHitProducer
-
TrajectoryCleanerESProducer
I would appreciate if there was some help from contacts from the reconstruction group to address (or discuss) the remaining ones (especially the ones associated to the Phase 2 menu, which is our ultimate goal).
Cc:
@cms-sw/hlt-l2 @fwyzard @Sam-Harper