52 tagHBHE_target_(ps.getUntrackedParameter<
edm::
InputTag>(
"tagHBHE_target",
edm::
InputTag(
"hltHbhereco@cuda"))),
99 if (not(chbhe_ref.isValid() and chbhe_target.isValid())) {
101 <<
"Either CPU or GPU RecHit Collection is unavailable, will not fill this event.";
105 auto lumiCache = luminosityBlockCache(
e.getLuminosityBlock().index());
108 std::map<HcalDetId, double> mRecHitEnergy;
111 double energy = it->energy();
116 if (mRecHitEnergy.find(did) == mRecHitEnergy.end())
117 mRecHitEnergy.insert(std::make_pair(did,
energy));
119 edm::LogError(
"HcalGPUComparisonTask") <<
"Duplicate Rechit from the same HcalDetId";
124 double energy = it->energy();
127 if (mRecHitEnergy.find(did) != mRecHitEnergy.end()) {
130 if (mRecHitEnergy[did] != 0.) {
134 }
else if (mRecHitEnergy[did] == 0. &&
energy == 0.) {
144 mRecHitEnergy.erase(did);
148 <<
"Energetic GPU Rechit exist, but not reconstructed by CPU. DetId = " << did;
151 if (!mRecHitEnergy.empty()) {
152 for (
auto const& rhpair : mRecHitEnergy) {
153 if (rhpair.second > 2.)
155 <<
"Energetic CPU Rechit exist, but not reconstructed by GPU. DetId = " << rhpair.first;
162 return DQTask::globalBeginLuminosityBlock(lb, es);
170 auto lumiCache = luminosityBlockCache(lb.
index());
174 DQTask::globalEndLuminosityBlock(lb, es);
180 desc.addUntracked<
int>(
"debug", 0);
181 desc.addUntracked<
int>(
"runkeyVal", 0);
183 desc.addUntracked<
int>(
"ptype", 1);
184 desc.addUntracked<
bool>(
"mtype",
true);
void addWithDefaultLabel(ParameterSetDescription const &psetDescription)
virtual void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *qy=new quantity::ValueQuantity(quantity::fN), int debug=0)
void fill(HcalDetId const &) override
#define DEFINE_FWK_MODULE(type)
void _resetMonitors(hcaldqm::UpdateFreq) override
edm::InputTag tagHBHE_target_
std::vector< T >::const_iterator const_iterator
HcalGPUComparisonTask(edm::ParameterSet const &)
const HcalElectronicsMap * getHcalMapping() const
void _process(edm::Event const &, edm::EventSetup const &) override
hcaldqm::Container2D energyGPUvsCPU_subdet_
Log< level::Error, false > LogError
edm::EDGetTokenT< HBHERecHitCollection > tokHBHE_target_
example_stream void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
virtual void fill(uint32_t)
void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
edm::InputTag tagHBHE_ref_
HcalElectronicsMap const * _emap
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
edm::EDGetTokenT< HBHERecHitCollection > tokHBHE_ref_
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
virtual void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="")
virtual void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fN), int debug=0)
edm::ESGetToken< HcalDbService, HcalDbRecord > hcalDbServiceToken_
hcaldqm::ContainerProf2D energyDiffGPUCPU_depth_
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fEnergy), int debug=0) override
LuminosityBlockIndex index() const
void fill(HcalDetId const &) override
hcaldqm::Container1D energyDiffGPUCPU_subdet_
std::shared_ptr< hcaldqm::Cache > globalBeginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const override
Log< level::Warning, false > LogWarning
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override