Skip to content

Commit 3d93e7e

Browse files
committed
add trackToTrack comparisons for GPU vs CPU tracking, populated for trackingLST
1 parent e04f43e commit 3d93e7e

File tree

5 files changed

+72
-2
lines changed

5 files changed

+72
-2
lines changed

Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -545,7 +545,7 @@ def condition(self, fragment, stepList, key, hasHarvest):
545545
class UpgradeWorkflow_lstOnGPUIters01TrackingOnly(UpgradeWorkflowTracking):
546546
def setup__(self, step, stepName, stepDict, k, properties):
547547
if 'Reco' in step: stepDict[stepName][k] = merge([self.step3, stepDict[step][k]])
548-
elif 'HARVEST' in step: stepDict[stepName][k] = merge([{'-s': 'HARVESTING:@trackingOnlyValidation+@trackingOnlyDQM'}, stepDict[step][k]])
548+
elif 'HARVEST' in step: stepDict[stepName][k] = merge([{'-s': 'HARVESTING:@trackingOnlyValidation+@trackingOnlyDQM', '--procModifiers': 'trackingIters01,trackingLST'}, stepDict[step][k]])
549549
elif 'ALCA' in step: stepDict[stepName][k] = None
550550
def condition(self, fragment, stepList, key, hasHarvest):
551551
result = (fragment=="TTbar_14TeV") and hasHarvest and ('Run4' in key)

DQM/TrackingMonitorClient/python/TrackingClientConfig_Tier0_cff.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,17 @@
9292

9393
from DQM.TrackingMonitor.TrackFoldedOccupancyClient_cfi import *
9494

95-
TrackingOfflineDQMClient = cms.Sequence(trackingQTester*trackingOfflineAnalyser*trackingEffFromHitPattern*voMonitoringClientSequence*primaryVertexResolutionClient*TrackEffClient*foldedMapClientSeq)
95+
from DQMOffline.Trigger.TrackingMonitoring_Client_cff import TrackToTrackEfficiencies as _t2t
96+
highPtTripletStepTrackToTrackSerialSyncAnalyzer = _t2t.clone(
97+
subDirs = ["Tracking/TrackBuilding/ValidationWRTSerialSync/highPtTripletStep"])
98+
trackToTrackCPUAnalyzer = cms.Sequence()
99+
_trackToTrackCPUAnalyzer_trackingLST = cms.Sequence(highPtTripletStepTrackToTrackSerialSyncAnalyzer)
100+
from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140
101+
from Configuration.ProcessModifiers.trackingLST_cff import trackingLST
102+
(trackingPhase2PU140 & trackingLST).toReplaceWith(trackToTrackCPUAnalyzer, _trackToTrackCPUAnalyzer_trackingLST)
103+
104+
105+
TrackingOfflineDQMClient = cms.Sequence(trackingQTester*trackingOfflineAnalyser*trackingEffFromHitPattern*voMonitoringClientSequence*primaryVertexResolutionClient*TrackEffClient*foldedMapClientSeq*trackToTrackCPUAnalyzer)
96106

97107
TrackingOfflineDQMClientZeroBias = cms.Sequence(trackingQTester*trackingOfflineAnalyser*trackingEffFromHitPatternZeroBias*voMonitoringClientSequence*primaryVertexResolutionClient*TrackEffClient*foldedMapClientSeq)
98108

DQM/TrackingMonitorSource/python/TrackingSourceConfig_Tier0_cff.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -403,6 +403,7 @@ def _copyIfExists(mod, pset, name):
403403
TrackingDQMSourceTier0 += TrackSeedMonSequence
404404

405405
from DQM.TrackingMonitorSource.shortTrackResolution_cff import *
406+
from DQM.TrackingMonitorSource.trackToTrackCPU_cff import *
406407

407408
# MessageLog
408409
for module in selectedModules :
@@ -412,6 +413,7 @@ def _copyIfExists(mod, pset, name):
412413
TrackingDQMSourceTier0 += voWcutMonitoringSequence
413414
TrackingDQMSourceTier0 += primaryVertexResolution
414415
TrackingDQMSourceTier0 += shortTrackResolution3to8
416+
TrackingDQMSourceTier0 += trackToTrackCPUSequence
415417
TrackingDQMSourceTier0 += dqmInfoTracking
416418

417419

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import FWCore.ParameterSet.Config as cms
2+
from RecoTracker.IterativeTracking.HighPtTripletStep_cff import HighPtTripletStepTaskSerialSync
3+
from .TrackToTrackComparisonHists_cfi import TrackToTrackComparisonHists as _t2t
4+
5+
trackToTrackCPUSequence = cms.Sequence()
6+
7+
highPtTripletStepTrackToTrackSerialSync = _t2t.clone(
8+
requireValidHLTPaths = False,
9+
monitoredTrack = "highPtTripletStepTracks",
10+
referenceTrack = "highPtTripletStepTracksSerialSync",
11+
12+
monitoredBeamSpot = "offlineBeamSpot",
13+
monitoredPrimaryVertices = "offlinePrimaryVertices",
14+
topDirName = "Tracking/TrackBuilding/ValidationWRTSerialSync/highPtTripletStep"
15+
)
16+
_trackToTrackCPUTask_trackingLST = cms.Sequence(HighPtTripletStepTaskSerialSync)
17+
_trackToTrackCPUTask_trackingLST += highPtTripletStepTrackToTrackSerialSync
18+
19+
from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140
20+
from Configuration.ProcessModifiers.trackingLST_cff import trackingLST
21+
(trackingPhase2PU140 & trackingLST).toReplaceWith(trackToTrackCPUSequence, _trackToTrackCPUTask_trackingLST)

RecoTracker/IterativeTracking/python/HighPtTripletStep_cff.py

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -433,6 +433,43 @@
433433
lstProducerTask, highPtTripletStepLSTpTracks, highPtTripletStepLSTT5Tracks, highPtTripletStepSelectorLSTT5)
434434
(trackingPhase2PU140 & trackingLST).toReplaceWith(HighPtTripletStepTask, _HighPtTripletStepTask_LST)
435435

436+
lstInputProducerSerialSync = lstInputProducer.clone(
437+
alpaka = dict(backend = "serial_sync")
438+
)
439+
lstProducerSerialSync = lstProducer.clone(
440+
alpaka = dict(backend = "serial_sync"),
441+
lstInput = "lstInputProducerSerialSync"
442+
)
443+
highPtTripletStepTrackCandidatesSerialSync = highPtTripletStepTrackCandidates.clone()
444+
(trackingPhase2PU140 & trackingLST).toModify(highPtTripletStepTrackCandidatesSerialSync,
445+
lstOutput = "lstProducerSerialSync",
446+
lstInput = "lstInputProducerSerialSync",
447+
lstPixelSeeds = "lstInputProducerSerialSync"
448+
)
449+
highPtTripletStepLSTpTracksSerialSync = highPtTripletStepLSTpTracks.clone(
450+
src = 'highPtTripletStepTrackCandidatesSerialSync:pTCsLST')
451+
highPtTripletStepLSTT5TracksSerialSync = highPtTripletStepLSTT5Tracks.clone(
452+
src = 'highPtTripletStepTrackCandidatesSerialSync:t5TCsLST')
453+
highPtTripletStepSelectorSerialSync = highPtTripletStepSelector.clone()
454+
(trackingPhase2PU140 & trackingLST).toModify(highPtTripletStepSelectorSerialSync, src = "highPtTripletStepLSTpTracksSerialSync" )
455+
highPtTripletStepSelectorLSTT5SerialSync = highPtTripletStepSelectorLSTT5.clone(src = "highPtTripletStepLSTT5TracksSerialSync")
456+
highPtTripletStepTracksSerialSync = highPtTripletStepTracks.clone()
457+
(trackingPhase2PU140 & trackingLST).toModify(highPtTripletStepTracksSerialSync,
458+
TrackProducers = ['highPtTripletStepLSTpTracksSerialSync',
459+
'highPtTripletStepLSTT5TracksSerialSync'],
460+
selectedTrackQuals = ['highPtTripletStepSelectorSerialSync:highPtTripletStep',
461+
'highPtTripletStepSelectorLSTT5SerialSync:highPtTripletStepLSTT5'],
462+
)
463+
_HighPtTripletStepTask_LSTSerialSync = HighPtTripletStepTask.copy()
464+
_HighPtTripletStepTask_LSTSerialSync.add(siPhase2RecHits, lstInitialStepSeedTracks, lstHighPtTripletStepSeedTracks, lstInputProducerSerialSync,
465+
lstProducerSerialSync, highPtTripletStepTrackCandidatesSerialSync,
466+
highPtTripletStepLSTpTracksSerialSync, highPtTripletStepLSTT5TracksSerialSync,
467+
highPtTripletStepSelectorSerialSync, highPtTripletStepSelectorLSTT5SerialSync,
468+
highPtTripletStepTracksSerialSync
469+
)
470+
HighPtTripletStepTaskSerialSync = cms.Task()
471+
(trackingPhase2PU140 & trackingLST).toReplaceWith(HighPtTripletStepTaskSerialSync, _HighPtTripletStepTask_LSTSerialSync)
472+
436473
# fast tracking mask producer
437474
from FastSimulation.Tracking.FastTrackerRecHitMaskProducer_cfi import maskProducerFromClusterRemover
438475
highPtTripletStepMasks = maskProducerFromClusterRemover(highPtTripletStepClusters)

0 commit comments

Comments
 (0)