Skip to content

Commit f912613

Browse files
authored
Merge pull request #46828 from SegmentLinking/CMSSW_14_2_0_pre4_singleIter_LST_HLT
Addition of single iteration Patatrack and LST HLT configurations and workflows
2 parents 9628e8f + 0f32bd0 commit f912613

37 files changed

+370
-14
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
# This modifier sets the LST (Phase-2 line segment tracking) used for track seeding
4+
# Needs to be used on top of the trackingLST modifier
5+
seedingLST = cms.Modifier()
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
# This modifier merges the initialStep and highPtTripletStep iterations
4+
# to a single iteration using Patatrack pixel tracks with >3 hits as seeds
5+
singleIterPatatrack = cms.Modifier()

Configuration/PyReleaseValidation/README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,9 @@ The offsets currently in use are:
7070
* 0.75: HLT phase-2 timing menu
7171
* 0.751: HLT phase-2 timing menu Alpaka variant
7272
* 0.752: HLT phase-2 timing menu ticl_v5 variant
73+
* 0.753: HLT phase-2 timing menu Alpaka, single tracking iteration variant
74+
* 0.754: HLT phase-2 timing menu Alpaka, single tracking iteration, LST building variant
75+
* 0.755: HLT phase-2 timing menu Alpaka, LST building variant
7376
* 0.78: Complete L1 workflow
7477
* 0.8: BPH Parking (Run-2)
7578
* 0.81: Running also HeavyFlavor DQM
@@ -91,7 +94,6 @@ The offsets currently in use are:
9194
* 0.633: ECAL phase2 Trigger Primitive
9295
* 0.634: ECAL phase2 Trigger Primitive + component-method based digis
9396
* 0.635: ECAL phase2 Trigger Primitive + component-method based finely-sampled waveforms
94-
* 0.75: Phase-2 HLT Timing menu
9597
* 0.91: Track DNN modifier
9698
* 0.97: Premixing stage1
9799
* 0.98: Premixing stage2

Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2130,6 +2130,30 @@ def condition(self, fragment, stepList, key, hasHarvest):
21302130
'--procModifiers': 'ticl_v5'
21312131
}
21322132

2133+
upgradeWFs['HLTTiming75e33AlpakaSingleIter'] = deepcopy(upgradeWFs['HLTTiming75e33'])
2134+
upgradeWFs['HLTTiming75e33AlpakaSingleIter'].suffix = '_HLT75e33TimingAlpakaSingleIter'
2135+
upgradeWFs['HLTTiming75e33AlpakaSingleIter'].offset = 0.753
2136+
upgradeWFs['HLTTiming75e33AlpakaSingleIter'].step2 = {
2137+
'-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing',
2138+
'--procModifiers': 'alpaka,singleIterPatatrack'
2139+
}
2140+
2141+
upgradeWFs['HLTTiming75e33AlpakaSingleIterLST'] = deepcopy(upgradeWFs['HLTTiming75e33'])
2142+
upgradeWFs['HLTTiming75e33AlpakaSingleIterLST'].suffix = '_HLT75e33TimingAlpakaSingleIterLST'
2143+
upgradeWFs['HLTTiming75e33AlpakaSingleIterLST'].offset = 0.754
2144+
upgradeWFs['HLTTiming75e33AlpakaSingleIterLST'].step2 = {
2145+
'-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing',
2146+
'--procModifiers': 'alpaka,singleIterPatatrack,trackingLST'
2147+
}
2148+
2149+
upgradeWFs['HLTTiming75e33AlpakaLST'] = deepcopy(upgradeWFs['HLTTiming75e33'])
2150+
upgradeWFs['HLTTiming75e33AlpakaLST'].suffix = '_HLT75e33TimingAlpakaLST'
2151+
upgradeWFs['HLTTiming75e33AlpakaLST'].offset = 0.755
2152+
upgradeWFs['HLTTiming75e33AlpakaLST'].step2 = {
2153+
'-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing',
2154+
'--procModifiers': 'alpaka,trackingLST'
2155+
}
2156+
21332157

21342158
class UpgradeWorkflow_HLTwDIGI75e33(UpgradeWorkflow):
21352159
def setup_(self, step, stepName, stepDict, k, properties):
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
def _addProcessModulesDevLST(process):
4+
process.hltESPModulesDevLST = cms.ESProducer('LSTModulesDevESProducer@alpaka',
5+
appendToDataLabel = cms.string(''),
6+
alpaka = cms.untracked.PSet(
7+
backend = cms.untracked.string('')
8+
)
9+
)
10+
11+
from Configuration.ProcessModifiers.trackingLST_cff import trackingLST
12+
modifyConfigurationForTrackingLSTModulesDevLST_ = trackingLST.makeProcessModifier(_addProcessModulesDevLST)

HLTrigger/Configuration/python/HLT_75e33/eventsetup/hltTTRBWR_cfi.py renamed to HLTrigger/Configuration/python/HLT_75e33/eventsetup/hltESPTTRHBuilderWithTrackAngle_cfi.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import FWCore.ParameterSet.Config as cms
22

3-
hltTTRBWR = cms.ESProducer("TkTransientTrackingRecHitBuilderESProducer",
4-
ComponentName = cms.string('hltESPTTRHBWithTrackAngle'),
3+
hltESPTTRHBuilderWithTrackAngle = cms.ESProducer("TkTransientTrackingRecHitBuilderESProducer",
4+
ComponentName = cms.string('hltESPTTRHBuilderWithTrackAngle'),
55
ComputeCoarseLocalPositionFromDisk = cms.bool(False),
66
Matcher = cms.string('StandardMatcher'),
77
Phase2StripCPE = cms.string('Phase2StripCPE'),
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
def _addProcessTTRHBuilderWithoutRefit(process):
4+
process.hltESPTTRHBuilderWithoutRefit = cms.ESProducer("TkTransientTrackingRecHitBuilderESProducer",
5+
ComponentName = cms.string('hltESPTTRHBuilderWithoutRefit'),
6+
ComputeCoarseLocalPositionFromDisk = cms.bool(False),
7+
Matcher = cms.string('Fake'),
8+
Phase2StripCPE = cms.string(''),
9+
PixelCPE = cms.string('Fake'),
10+
StripCPE = cms.string('Fake')
11+
)
12+
13+
from Configuration.ProcessModifiers.trackingLST_cff import trackingLST
14+
modifyConfigurationForTrackingLSTTTRHBuilderWithoutRefit_ = trackingLST.makeProcessModifier(_addProcessTTRHBuilderWithoutRefit)

HLTrigger/Configuration/python/HLT_75e33/modules/hltGeneralTracks_cfi.py

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,3 +24,58 @@
2424
trackAlgoPriorityOrder = cms.string('trackAlgoPriorityOrder'),
2525
writeOnlyTrkQuals = cms.bool(False)
2626
)
27+
28+
_hltGeneralTracksSingleIterPatatrack = hltGeneralTracks.clone(
29+
TrackProducers = ["hltInitialStepTrackSelectionHighPurity"],
30+
hasSelector = [0],
31+
indivShareFrac = [1.0],
32+
selectedTrackQuals = ["hltInitialStepTrackSelectionHighPurity"],
33+
setsToMerge = [cms.PSet(
34+
pQual = cms.bool(True),
35+
tLists = cms.vint32(0)
36+
)]
37+
)
38+
39+
from Configuration.ProcessModifiers.singleIterPatatrack_cff import singleIterPatatrack
40+
singleIterPatatrack.toReplaceWith(hltGeneralTracks, _hltGeneralTracksSingleIterPatatrack)
41+
42+
_hltGeneralTracksLST = hltGeneralTracks.clone(
43+
TrackProducers = ["hltInitialStepTrackSelectionHighPuritypTTCLST", "hltInitialStepTrackSelectionHighPuritypLSTCLST", "hltInitialStepTracksT5TCLST", "hltHighPtTripletStepTrackSelectionHighPurity"],
44+
hasSelector = [0,0,0,0],
45+
indivShareFrac = [0.1,0.1,0.1,0.1],
46+
selectedTrackQuals = ["hltInitialStepTrackSelectionHighPuritypTTCLST", "hltInitialStepTrackSelectionHighPuritypLSTCLST", "hltInitialStepTracksT5TCLST", "hltHighPtTripletStepTrackSelectionHighPurity"],
47+
setsToMerge = [cms.PSet(
48+
pQual = cms.bool(True),
49+
tLists = cms.vint32(0,1,2,3)
50+
)]
51+
)
52+
53+
from Configuration.ProcessModifiers.trackingLST_cff import trackingLST
54+
trackingLST.toReplaceWith(hltGeneralTracks, _hltGeneralTracksLST)
55+
56+
_hltGeneralTracksLSTSingleIterPatatrack = hltGeneralTracks.clone(
57+
TrackProducers = ["hltInitialStepTrackSelectionHighPuritypTTCLST", "hltInitialStepTrackSelectionHighPuritypLSTCLST", "hltInitialStepTracksT5TCLST"],
58+
hasSelector = [0,0,0],
59+
indivShareFrac = [0.1,0.1,0.1],
60+
selectedTrackQuals = ["hltInitialStepTrackSelectionHighPuritypTTCLST", "hltInitialStepTrackSelectionHighPuritypLSTCLST", "hltInitialStepTracksT5TCLST"],
61+
setsToMerge = [cms.PSet(
62+
pQual = cms.bool(True),
63+
tLists = cms.vint32(0,1,2)
64+
)]
65+
)
66+
67+
(singleIterPatatrack & trackingLST).toReplaceWith(hltGeneralTracks, _hltGeneralTracksLSTSingleIterPatatrack)
68+
69+
_hltGeneralTracksLSTSeeding = hltGeneralTracks.clone(
70+
TrackProducers = ["hltInitialStepTrackSelectionHighPuritypTTCLST", "hltInitialStepTracksT5TCLST", "hltHighPtTripletStepTrackSelectionHighPuritypLSTCLST"],
71+
hasSelector = [0,0,0],
72+
indivShareFrac = [0.1,0.1,0.1],
73+
selectedTrackQuals = ["hltInitialStepTrackSelectionHighPuritypTTCLST", "hltInitialStepTracksT5TCLST", "hltHighPtTripletStepTrackSelectionHighPuritypLSTCLST"],
74+
setsToMerge = [cms.PSet(
75+
pQual = cms.bool(True),
76+
tLists = cms.vint32(0,1,2)
77+
)]
78+
)
79+
80+
from Configuration.ProcessModifiers.seedingLST_cff import seedingLST
81+
(seedingLST & trackingLST).toReplaceWith(hltGeneralTracks, _hltGeneralTracksLSTSeeding)

HLTrigger/Configuration/python/HLT_75e33/modules/hltHighPtTripletStepClusters_cfi.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,10 @@
1212
trackClassifier = cms.InputTag("","QualityMasks"),
1313
trajectories = cms.InputTag("hltInitialStepTrackSelectionHighPurity")
1414
)
15+
16+
_hltHighPtTripletStepClustersLST = hltHighPtTripletStepClusters.clone(
17+
trajectories = "hltInitialStepSeedTracksLST"
18+
)
19+
20+
from Configuration.ProcessModifiers.trackingLST_cff import trackingLST
21+
trackingLST.toReplaceWith(hltHighPtTripletStepClusters, _hltHighPtTripletStepClustersLST)
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
hltHighPtTripletStepSeedTracksLST = cms.EDProducer(
4+
"TrackFromSeedProducer",
5+
src = cms.InputTag("hltHighPtTripletStepSeeds"),
6+
beamSpot = cms.InputTag("hltOnlineBeamSpot"),
7+
TTRHBuilder = cms.string("hltESPTTRHBuilderWithoutRefit")
8+
)

0 commit comments

Comments
 (0)