Skip to content

Commit

Permalink
Add optional flags to disable SOA->legacy conversion and GPU->CPU tra…
Browse files Browse the repository at this point in the history
…nsfer (#132)

Always produce the CPU cluster and rechit collections, since they are needed anyway.
Add transfer and conversion flags to clusterizer, rechits and CA.
Add a skeleton for the future pixel track producer.
Add customize functions to disable conversions to legacy formats, and to disable unnecessary GPU->CPU transfers.
  • Loading branch information
cmsbuild authored and fwyzard committed Dec 25, 2020
1 parent 5167a75 commit 856c7df
Showing 1 changed file with 29 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
import FWCore.ParameterSet.Config as cms

def customizePixelTracksForProfiling(process):
process.MessageLogger.cerr.FwkReport.reportEvery = 100

process.out = cms.OutputModule("AsciiOutputModule",
outputCommands = cms.untracked.vstring(
"keep *_pixelTracks_*_*",
Expand All @@ -13,3 +15,30 @@ def customizePixelTracksForProfiling(process):
process.schedule = cms.Schedule(process.raw2digi_step, process.reconstruction_step, process.outPath)

return process

def customizePixelTracksForProfilingDisableConversion(process):
process = customizePixelTracksForProfiling(process)

# Turn off cluster shape filter so that CA doesn't depend on clusters
process.pixelTracksHitQuadruplets.SeedComparitorPSet = cms.PSet(ComponentName = cms.string("none"))

# Replace pixel track producer with a dummy one for now
from RecoPixelVertexing.PixelTrackFitting.pixelTrackProducerFromCUDA_cfi import pixelTrackProducerFromCUDA as _pixelTrackProducerFromCUDA
process.pixelTracks = _pixelTrackProducerFromCUDA.clone()

# Disable conversions to legacy
process.siPixelClustersPreSplitting.gpuEnableConversion = False
process.siPixelRecHitsPreSplitting.gpuEnableConversion = False
process.pixelTracksHitQuadruplets.gpuEnableConversion = False

return process

def customizePixelTracksForProfilingDisableTransfer(process):
process = customizePixelTracksForProfilingDisableConversion(process)

# Disable "unnecessary" transfers to CPU
process.siPixelClustersPreSplitting.gpuEnableTransfer = False
process.siPixelRecHitsPreSplitting.gpuEnableTransfer = False
process.pixelTracksHitQuadruplets.gpuEnableTransfer = False

return process

0 comments on commit 856c7df

Please sign in to comment.