Skip to content

Commit

Permalink
Update the default configuration of ECAL modules (#598)
Browse files Browse the repository at this point in the history
Update the default configuration of "EcalRawToDigiGPU" and "EcalUncalibRecHitProducerGPU":
  - enable the ECAL pulse timing computation in the offline workflow;
  - change the ECAL GPU digis label to match the CPU ones.

Other clean up:
  - remove an unused cfi file;
  - rename "EcalUncalibRecHitMultiFitAlgo_gpu_new" to "EcalUncalibRecHitMultiFitAlgoGPU".
  • Loading branch information
fwyzard committed Dec 23, 2020
1 parent 87babda commit 0d5e096
Show file tree
Hide file tree
Showing 9 changed files with 22 additions and 108 deletions.
4 changes: 2 additions & 2 deletions EventFilter/EcalRawToDigi/plugins/EcalCPUDigisProducer.cc
Original file line number Diff line number Diff line change
Expand Up @@ -69,8 +69,8 @@ class EcalCPUDigisProducer : public edm::stream::EDProducer<edm::ExternalWork> {
void EcalCPUDigisProducer::fillDescriptions(edm::ConfigurationDescriptions& confDesc) {
edm::ParameterSetDescription desc;

desc.add<edm::InputTag>("digisInLabelEB", edm::InputTag{"ecalRawToDigiGPU", "ebDigisGPU"});
desc.add<edm::InputTag>("digisInLabelEE", edm::InputTag{"ecalRawToDigiGPU", "eeDigisGPU"});
desc.add<edm::InputTag>("digisInLabelEB", edm::InputTag{"ecalRawToDigiGPU", "ebDigis"});
desc.add<edm::InputTag>("digisInLabelEE", edm::InputTag{"ecalRawToDigiGPU", "eeDigis"});
desc.add<std::string>("digisOutLabelEB", "ebDigis");
desc.add<std::string>("digisOutLabelEE", "eeDigis");

Expand Down
4 changes: 2 additions & 2 deletions EventFilter/EcalRawToDigi/plugins/EcalRawToDigiGPU.cc
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@ void EcalRawToDigiGPU::fillDescriptions(edm::ConfigurationDescriptions& confDesc
desc.add<std::vector<int>>("FEDs", feds);
desc.add<uint32_t>("maxChannelsEB", 61200);
desc.add<uint32_t>("maxChannelsEE", 14648);
desc.add<std::string>("digisLabelEB", "ebDigisGPU");
desc.add<std::string>("digisLabelEE", "eeDigisGPU");
desc.add<std::string>("digisLabelEB", "ebDigis");
desc.add<std::string>("digisLabelEE", "eeDigis");

std::string label = "ecalRawToDigiGPU";
confDesc.add(label, desc);
Expand Down
4 changes: 2 additions & 2 deletions EventFilter/EcalRawToDigi/python/ecalDigis_cff.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@
# copy the digi from the GPU to the CPU and convert to legacy format
from EventFilter.EcalRawToDigi.ecalCPUDigisProducer_cfi import ecalCPUDigisProducer as _ecalCPUDigisProducer
_ecalDigis_gpu = _ecalCPUDigisProducer.clone(
digisInLabelEB = cms.InputTag('ecalDigisGPU', 'ebDigisGPU'),
digisInLabelEE = cms.InputTag('ecalDigisGPU', 'eeDigisGPU'),
digisInLabelEB = ('ecalDigisGPU', 'ebDigis'),
digisInLabelEE = ('ecalDigisGPU', 'eeDigis'),
produceDummyIntegrityCollections = True
)
gpu.toReplaceWith(ecalDigis, _ecalDigis_gpu)
Expand Down
5 changes: 3 additions & 2 deletions HLTrigger/Configuration/python/customizeHLTforPatatrack.py
Original file line number Diff line number Diff line change
Expand Up @@ -429,8 +429,9 @@ def customiseEcalLocalReconstruction(process):
# ECAL multifit running on gpu
from RecoLocalCalo.EcalRecProducers.ecalUncalibRecHitProducerGPU_cfi import ecalUncalibRecHitProducerGPU as _ecalUncalibRecHitProducerGPU
process.hltEcalUncalibRecHitGPU = _ecalUncalibRecHitProducerGPU.clone(
digisLabelEB = cms.InputTag("hltEcalDigisGPU", "ebDigis"),
digisLabelEE = cms.InputTag("hltEcalDigisGPU", "eeDigis")
digisLabelEB = ("hltEcalDigisGPU", "ebDigis"),
digisLabelEE = ("hltEcalDigisGPU", "eeDigis"),
shouldRunTimingComputation = False
)

# copy the ECAL uncalibrated rechits from gpu to cpu in SoA format
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
#include "AmplitudeComputationCommonKernels.h"
#include "AmplitudeComputationKernels.h"
#include "Common.h"
#include "EcalUncalibRecHitMultiFitAlgo_gpu_new.h"
#include "EcalUncalibRecHitMultiFitAlgoGPU.h"
#include "TimeComputationKernels.h"

//#define DEBUG
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#ifndef RecoLocalCalo_EcalRecProducers_plugins_EcalUncalibRecHitMultiFitAlgo_gpu_new_h
#define RecoLocalCalo_EcalRecProducers_plugins_EcalUncalibRecHitMultiFitAlgo_gpu_new_h
#ifndef RecoLocalCalo_EcalRecProducers_plugins_EcalUncalibRecHitMultiFitAlgoGPU_h
#define RecoLocalCalo_EcalRecProducers_plugins_EcalUncalibRecHitMultiFitAlgoGPU_h

#include <vector>

Expand All @@ -20,4 +20,4 @@ namespace ecal {
} // namespace multifit
} // namespace ecal

#endif // RecoLocalCalo_EcalRecProducers_plugins_EcalUncalibRecHitMultiFitAlgo_gpu_new_h
#endif // RecoLocalCalo_EcalRecProducers_plugins_EcalUncalibRecHitMultiFitAlgoGPU_h
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@

#include "Common.h"
#include "DeclsForKernels.h"
#include "EcalUncalibRecHitMultiFitAlgo_gpu_new.h"
#include "EcalUncalibRecHitMultiFitAlgoGPU.h"

class EcalUncalibRecHitProducerGPU : public edm::stream::EDProducer<edm::ExternalWork> {
public:
Expand Down Expand Up @@ -73,8 +73,8 @@ class EcalUncalibRecHitProducerGPU : public edm::stream::EDProducer<edm::Externa
void EcalUncalibRecHitProducerGPU::fillDescriptions(edm::ConfigurationDescriptions& confDesc) {
edm::ParameterSetDescription desc;

desc.add<edm::InputTag>("digisLabelEB", edm::InputTag("ecalRawToDigiGPU", "ebDigisGPU"));
desc.add<edm::InputTag>("digisLabelEE", edm::InputTag("ecalRawToDigiGPU", "eeDigisGPU"));
desc.add<edm::InputTag>("digisLabelEB", edm::InputTag("ecalRawToDigiGPU", "ebDigis"));
desc.add<edm::InputTag>("digisLabelEE", edm::InputTag("ecalRawToDigiGPU", "eeDigis"));

desc.add<std::string>("recHitsLabelEB", "EcalUncalibRecHitsEB");
desc.add<std::string>("recHitsLabelEE", "EcalUncalibRecHitsEE");
Expand All @@ -99,10 +99,9 @@ void EcalUncalibRecHitProducerGPU::fillDescriptions(edm::ConfigurationDescriptio
desc.add<double>("amplitudeThresholdEE", 10);
desc.add<uint32_t>("maxNumberHitsEB", 61200);
desc.add<uint32_t>("maxNumberHitsEE", 14648);
desc.add<std::vector<uint32_t>>("kernelMinimizeThreads", {32, 1, 1});
// ---- default false or true? It was set to true, but at HLT it is false
desc.add<bool>("shouldRunTimingComputation", false);
confDesc.add("ecalUncalibRecHitProducerGPU", desc);
desc.addUntracked<std::vector<uint32_t>>("kernelMinimizeThreads", {32, 1, 1});
desc.add<bool>("shouldRunTimingComputation", true);
confDesc.addWithDefaultLabel(desc);
}

EcalUncalibRecHitProducerGPU::EcalUncalibRecHitProducerGPU(const edm::ParameterSet& ps)
Expand Down Expand Up @@ -150,7 +149,7 @@ EcalUncalibRecHitProducerGPU::EcalUncalibRecHitProducerGPU(const edm::ParameterS
configParameters_.shouldRunTimingComputation = ps.getParameter<bool>("shouldRunTimingComputation");

// minimize kernel launch conf
auto threadsMinimize = ps.getParameter<std::vector<uint32_t>>("kernelMinimizeThreads");
auto threadsMinimize = ps.getUntrackedParameter<std::vector<uint32_t>>("kernelMinimizeThreads");
configParameters_.kernelMinimizeThreads[0] = threadsMinimize[0];
configParameters_.kernelMinimizeThreads[1] = threadsMinimize[1];
configParameters_.kernelMinimizeThreads[2] = threadsMinimize[2];
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@
# ECAL multifit running on GPU
from RecoLocalCalo.EcalRecProducers.ecalUncalibRecHitProducerGPU_cfi import ecalUncalibRecHitProducerGPU as _ecalUncalibRecHitProducerGPU
ecalMultiFitUncalibRecHitGPU = _ecalUncalibRecHitProducerGPU.clone(
digisLabelEB = cms.InputTag('ecalDigisGPU', 'ebDigisGPU'),
digisLabelEE = cms.InputTag('ecalDigisGPU', 'eeDigisGPU'),
digisLabelEB = cms.InputTag('ecalDigisGPU', 'ebDigis'),
digisLabelEE = cms.InputTag('ecalDigisGPU', 'eeDigis'),
)

# copy the uncalibrated rechits from GPU to CPU
Expand Down

0 comments on commit 0d5e096

Please sign in to comment.