-
Notifications
You must be signed in to change notification settings - Fork 4.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
customiser for alpaka patatrack pixel seeding for phase2 #45508
customiser for alpaka patatrack pixel seeding for phase2 #45508
Conversation
cms-bot internal usage |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-45508/40976 |
A new Pull Request was created by @lguzzi for master. It involves the following packages:
@Martin-Grunewald, @cmsbuild, @mmusich can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
backend = cms.untracked.string('') | ||
) | ||
) | ||
process.siPixelClustersSoA = cms.EDProducer('SiPixelPhase2DigiToCluster@alpaka', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Modules run at HLT start their label with hlt
- this should now also be done for Phase-2.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I changed the name only for the new collections added by the customiser in beb3cb2
There are several modules and sequences in the phase2 menu which do not follow the naming convention. This problem is known, it will be fixed in a future PR
process.HLTDoLocalStripSequence = cms.Sequence( | ||
process.siPhase2Clusters | ||
) | ||
process.itLocalRecoSequence = cms.Sequence( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seqences run at HLT start their label with HLT
- please do so also for Phase-2.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are several modules and sequences in the phase2 menu which do not follow the naming convention. This problem is known, it will be fixed in a future PR. This sequence in particular is already defined in https://github.com/cms-sw/cmssw/blob/0cbc4b00b1664496105480e9f561a29ba7c9a68b/HLTrigger/Configuration/python/HLT_75e33/sequences/itLocalRecoSequence_cfi.py
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mmmh, as long as the new instances are used only in the customization function why do you need to keep the naming used elsewhere? Aren't you replacing the sequence entirely?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the idea was to allow other POGs to use the customiser with minimal effort. Some paths include this sequence (for example
cmssw/HLTrigger/Configuration/python/HLT_75e33/paths/HLT_Mu37_Mu27_FromL1TkMuon_cfi.py
Line 19 in 0cbc4b0
+itLocalRecoSequence |
process.HLT_AlpakaTrackingPath.insert(item=process.HLTTrackingV61Sequence , index=len(process.HLT_AlpakaTrackingPath.moduleNames())) | ||
process.HLT_AlpakaTrackingPath.insert(item=process.HLTEndSequence , index=len(process.HLT_AlpakaTrackingPath.moduleNames())) | ||
|
||
process.FEVTDEBUGHLTEventContent.outputCommands.append('keep *_siPixelClusters_*_reHLT') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is this specific processName reHLT
hardwired here and below?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
these were leftovers, removed them in 2147f3d
process.FEVTDEBUGHLTEventContent.outputCommands.append('keep *_siPixelRecHits_*_reHLT') | ||
process.FEVTDEBUGHLTEventContent.outputCommands.append('keep *_hltPhase2PixelTracks_*_reHLT') | ||
process.FEVTDEBUGHLTEventContent.outputCommands.append('keep *_generalTracks_*_reHLT') | ||
process.FEVTDEBUGHLTEventContent.outputCommands.append('drop IntermediateHitDoublets_hltElePixelHitDoubletsL1Seeded__reHLT') # remove warning |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Syntax is incorrect - I suppose L1Seeded_*_reHLT
is required here and below?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
these were leftovers, removed them in 2147f3d
process.siPhase2Clusters | ||
) | ||
process.itLocalRecoSequence = cms.Sequence( | ||
process.HLTDoLocalStripSequence |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do you call this Strips for phase2? Something containing OT would be more appropriate
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also I find it confusing you call an OT local reco sequence within itLocalRecoSequence
(again the naming convention is not respected).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this sequence is already defined in https://github.com/cms-sw/cmssw/blob/0cbc4b00b1664496105480e9f561a29ba7c9a68b/HLTrigger/Configuration/python/HLT_75e33/sequences/HLTDoLocalPixelSequence_cfi.py . Its redefinition here is actually not needed, so I removed it from the customiser in 208d97d. The problem of phase2 naming convention will be addressed in a future PR
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the same is true for https://github.com/cms-sw/cmssw/blob/0cbc4b00b1664496105480e9f561a29ba7c9a68b/HLTrigger/Configuration/python/HLT_75e33/sequences/itLocalRecoSequence_cfi.py, which calls siPhase2Clusters as well. I did not change the structure of already existing sequences because they are called by other paths.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The problem of phase2 naming convention will be addressed in a future PR
@lguzzi please take note of #45500 (comment) (the renaming was kindly taken care of by @AuroraPerego). Please cross-check if you have comments.
assign heterogeneous |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wouldn't put 141X
in the file name, as it is likely to last into future releases as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done in 517e816
I would prefer that
|
For my own understanding, what's the advantage of that (in the long term)? See also discussion tentatively started at #45427 (comment) |
In general, keeping the customisation close to the module or sequence that it affects makes it easier to see what impact it has. Modifiers are a way to do that. |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-45508/41721 |
@cmsbuild, please test |
+1 Size: This PR adds an extra 36KB to repository
Comparison SummarySummary:
|
+hlt
|
+heterogeneous |
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. @antoniovilela, @mandrenguyen, @sextonkennedy, @rappoccio (and backports should be raised in the release meeting by the corresponding L2) |
+1 |
PR description:
this PR adds alpaka patatrack pixel tracking in the simplified menu using the common alpaka process modifier.
The hltPhase2PixelTracks are redefined to be produced by CAHitNtupletAlpakaPhase2. Full tracks are produced merging initialStep (building from alpaka patatrack) + highPtTripletStep (building as in legacy).
PR
Alpaka tracking is enabled running the HLT step with --procModifiers alpaka:
(previous steps can be copied from
runTheMatrix.py -l 29634.0 -t 4 -j 10 --ibeos --dryRun
)Tracking performance are reported here for general tracks and here for pixel tracks.
When moving from the old customiser function to process modifiers I checked that the two give identical results (when disabling HCAL alpaka reconstruction).
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:
not a backport