Pixel CPE Generic-only era modifier#50480
Conversation
|
cms-bot internal usage |
|
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-50480/48628 |
|
A new Pull Request was created by @mroguljic for master. It involves the following packages:
@Moanwar, @cmsbuild, @davidlange6, @fabiocos, @ftenchini, @jfernan2, @mandrenguyen, @srimanob can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
|
I guess for testing purposes it would be good to start adding Run3_2026 = cms.ModifierChain(Run3_2025, run3_SiPixelGenericCPE)to the configuration, assuming that's the intended outcome. |
|
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-50480/48631
|
|
Pull request #50480 was updated. @Moanwar, @cmsbuild, @davidlange6, @fabiocos, @ftenchini, @jfernan2, @mandrenguyen, @srimanob can you please check and sign again. |
| # Customize the Pixel CPE to only use Generic algorithm | ||
| from Configuration.Eras.Modifier_run3_SiPixelGenericCPE_cff import run3_SiPixelGenericCPE | ||
| from RecoTracker.Configuration.customizePixelCPEGenericOnly import replacePixelCPETemplateWithGeneric | ||
| modifyForRun3SiPixelGenericCPE_ = run3_SiPixelGenericCPE.makeProcessModifier(replacePixelCPETemplateWithGeneric) |
There was a problem hiding this comment.
One detail to be aware of. The modifyForRun3SiPixelGenericCPE_ will be called once during the first process.load() call that loads a configuration fragment whose import chain leads to this cff file. If a second process.load() call loads a configuration fragment (same or different) whose import chain also leads to this cff file, the modifyForRun3SiPixelGenericCPE_ will not be called again.
Given how the ConfigBuilder works and how the application configuration fragments are organized, this probably works for reconstruction. But if this fragment gets loaded via e.g. DQM, Validation, AlCa configuration fragments, and if those fragments add any new modules that have configuration parameters for the CPE, those configuration parameters are not modified.
There was a problem hiding this comment.
Thanks for the very relevant warning. We will attempt a different implementation that does not use makeProcessModifier.
There was a problem hiding this comment.
There is already an appropriate modifier in CMSSW. It was intended for Phase-2 workflows, but it works for Phase-1 as well.
After changing the era,
from Configuration.ProcessModifiers.PixelCPEGeneric_cff import PixelCPEGeneric
Run3_2026 = cms.ModifierChain(Run3_2025, PixelCPEGeneric)the config differs only in the ESProducers for RecHits
src$ diff alternative.txt central.txt
85755c85755
< PixelCPE = cms.string('PixelCPEGeneric'),
---
> PixelCPE = cms.string('PixelCPEClusterRepair'),
85766c85766
< PixelCPE = cms.string('PixelCPEGeneric'),
---
> PixelCPE = cms.string('PixelCPEClusterRepairWithoutProbQ'),
d1236a0 to
566ca3c
Compare
|
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-50480/48655
|
|
Pull request #50480 was updated. @cmsbuild, @davidlange6, @fabiocos, @ftenchini, @mandrenguyen can you please check and sign again. |
|
assign ppd |
|
please test |
|
+1 Size: This PR adds an extra 24KB to repository Comparison SummarySummary:
|
|
+1 |
|
This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @ftenchini, @sextonkennedy, @mandrenguyen (and backports should be raised in the release meeting by the corresponding L2) |
|
let's have the 16.0 backport created right away please |
|
+1 |
PR description:
This PR adds a modifier to the Run 3 2026 era configuration that makes the PixelRecHits ESProducers use Generic CPE. The PR is created in case of a possible change in reconstruction during 2026 data-taking.
PR validation:
Tested at configuration level with
The full configuration, w.r.t. the unmodified configuration, only differs in the
PixelCPEparameter for the twoTkTransientTrackingRecHitBuilderESProducerforThe producers, with the change included, are shown below
Changes are expected in all workflows that use Run3 2026 era modifier.
If this PR is a backport please specify the original PR and why you need to backport that PR. If this PR will be backported please specify to which release cycle the backport is meant for:
To be backported to 16.0.X