CMS 3D CMS Logo

ecalMultiFitUncalibRecHit_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 from Configuration.ProcessModifiers.gpu_cff import gpu
3 
4 # ECAL multifit running on CPU
5 from RecoLocalCalo.EcalRecProducers.ecalMultiFitUncalibRecHit_cfi import ecalMultiFitUncalibRecHit
6 
7 ecalMultiFitUncalibRecHitTask = cms.Task(ecalMultiFitUncalibRecHit)
8 
9 # ECAL conditions used by the multifit running on GPU
10 from RecoLocalCalo.EcalRecProducers.ecalPedestalsGPUESProducer_cfi import ecalPedestalsGPUESProducer
11 from RecoLocalCalo.EcalRecProducers.ecalGainRatiosGPUESProducer_cfi import ecalGainRatiosGPUESProducer
12 from RecoLocalCalo.EcalRecProducers.ecalPulseShapesGPUESProducer_cfi import ecalPulseShapesGPUESProducer
13 from RecoLocalCalo.EcalRecProducers.ecalPulseCovariancesGPUESProducer_cfi import ecalPulseCovariancesGPUESProducer
14 from RecoLocalCalo.EcalRecProducers.ecalSamplesCorrelationGPUESProducer_cfi import ecalSamplesCorrelationGPUESProducer
15 from RecoLocalCalo.EcalRecProducers.ecalTimeBiasCorrectionsGPUESProducer_cfi import ecalTimeBiasCorrectionsGPUESProducer
16 from RecoLocalCalo.EcalRecProducers.ecalTimeCalibConstantsGPUESProducer_cfi import ecalTimeCalibConstantsGPUESProducer
17 from RecoLocalCalo.EcalRecProducers.ecalMultifitParametersGPUESProducer_cfi import ecalMultifitParametersGPUESProducer
18 
19 # ECAL multifit running on GPU
20 from RecoLocalCalo.EcalRecProducers.ecalUncalibRecHitProducerGPU_cfi import ecalUncalibRecHitProducerGPU as _ecalUncalibRecHitProducerGPU
21 ecalMultiFitUncalibRecHitGPU = _ecalUncalibRecHitProducerGPU.clone(
22  digisLabelEB = cms.InputTag('ecalDigisGPU', 'ebDigis'),
23  digisLabelEE = cms.InputTag('ecalDigisGPU', 'eeDigis'),
24 )
25 
26 # copy the uncalibrated rechits from GPU to CPU
27 from RecoLocalCalo.EcalRecProducers.ecalCPUUncalibRecHitProducer_cfi import ecalCPUUncalibRecHitProducer as _ecalCPUUncalibRecHitProducer
28 ecalMultiFitUncalibRecHitSoA = _ecalCPUUncalibRecHitProducer.clone(
29  recHitsInLabelEB = cms.InputTag('ecalMultiFitUncalibRecHitGPU', 'EcalUncalibRecHitsEB'),
30  recHitsInLabelEE = cms.InputTag('ecalMultiFitUncalibRecHitGPU', 'EcalUncalibRecHitsEE'),
31 )
32 
33 # convert the uncalibrated rechits from SoA to legacy format
34 from RecoLocalCalo.EcalRecProducers.ecalUncalibRecHitConvertGPU2CPUFormat_cfi import ecalUncalibRecHitConvertGPU2CPUFormat as _ecalUncalibRecHitConvertGPU2CPUFormat
35 _ecalMultiFitUncalibRecHit_gpu = _ecalUncalibRecHitConvertGPU2CPUFormat.clone(
36  recHitsLabelGPUEB = cms.InputTag('ecalMultiFitUncalibRecHitSoA', 'EcalUncalibRecHitsEB'),
37  recHitsLabelGPUEE = cms.InputTag('ecalMultiFitUncalibRecHitSoA', 'EcalUncalibRecHitsEE'),
38 )
39 gpu.toReplaceWith(ecalMultiFitUncalibRecHit, _ecalMultiFitUncalibRecHit_gpu)
40 
41 gpu.toReplaceWith(ecalMultiFitUncalibRecHitTask, cms.Task(
42  # ECAL conditions used by the multifit running on GPU
43  ecalPedestalsGPUESProducer,
44  ecalGainRatiosGPUESProducer,
45  ecalPulseShapesGPUESProducer,
46  ecalPulseCovariancesGPUESProducer,
47  ecalSamplesCorrelationGPUESProducer,
48  ecalTimeBiasCorrectionsGPUESProducer,
49  ecalTimeCalibConstantsGPUESProducer,
50  ecalMultifitParametersGPUESProducer,
51  # ECAL multifit running on GP
52  ecalMultiFitUncalibRecHitGPU,
53  # copy the uncalibrated rechits from GPU to CPU
54  ecalMultiFitUncalibRecHitSoA,
55  # convert the uncalibrated rechits legacy format
56  ecalMultiFitUncalibRecHit,
57 ))