CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
HcalGPUComparisonTask Class Reference
Inheritance diagram for HcalGPUComparisonTask:
hcaldqm::DQTask DQMOneEDAnalyzer< edm::LuminosityBlockCache< hcaldqm::Cache > > hcaldqm::DQModule edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::Accumulator, Args... > edm::one::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
std::shared_ptr< hcaldqm::CacheglobalBeginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) const override
 
void globalEndLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override
 
 HcalGPUComparisonTask (edm::ParameterSet const &)
 
 ~HcalGPUComparisonTask () override=default
 
- Public Member Functions inherited from hcaldqm::DQTask
void analyze (edm::Event const &, edm::EventSetup const &) override
 
void dqmBeginRun (edm::Run const &, edm::EventSetup const &) override
 
 DQTask (edm::ParameterSet const &)
 
std::shared_ptr< hcaldqm::CacheglobalBeginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) const override
 
void globalEndLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override
 
 ~DQTask () override
 
- Public Member Functions inherited from DQMOneEDAnalyzer< edm::LuminosityBlockCache< hcaldqm::Cache > >
void accumulate (edm::Event const &event, edm::EventSetup const &setup) override
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
 DQMOneEDAnalyzer ()
 
void endRun (edm::Run const &, edm::EventSetup const &) final
 
void endRunProduce (edm::Run &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::Accumulator, Args... >
 EDProducer ()=default
 
 EDProducer (const EDProducer &)=delete
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
const EDProduceroperator= (const EDProducer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
std::vector< bool > const & recordProvenanceList () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
TypeLabelList const & typeLabelList () const
 used by the fwk to register the list of products of this module More...
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESResolverIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESResolverIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProductResolverIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 
- Public Member Functions inherited from hcaldqm::DQModule
 DQModule (edm::ParameterSet const &)
 
virtual ~DQModule () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from hcaldqm::DQTask
static void fillPSetDescription (edm::ParameterSetDescription &des)
 
- Static Public Member Functions inherited from edm::one::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from hcaldqm::DQModule
static void fillPSetDescription (edm::ParameterSetDescription &desc)
 

Private Member Functions

void _process (edm::Event const &, edm::EventSetup const &) override
 
void _resetMonitors (hcaldqm::UpdateFreq) override
 

Private Attributes

hcaldqm::ContainerProf2D energyDiffGPUCPU_depth_
 
hcaldqm::Container1D energyDiffGPUCPU_subdet_
 
hcaldqm::Container2D energyGPUvsCPU_subdet_
 
edm::ESGetToken< HcalDbService, HcalDbRecordhcalDbServiceToken_
 
edm::InputTag tagHBHE_ref_
 
edm::InputTag tagHBHE_target_
 
edm::EDGetTokenT< HBHERecHitCollectiontokHBHE_ref_
 
edm::EDGetTokenT< HBHERecHitCollectiontokHBHE_target_
 

Additional Inherited Members

- Public Types inherited from DQMOneEDAnalyzer< edm::LuminosityBlockCache< hcaldqm::Cache > >
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::one::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
template<typename T >
using BranchAliasSetterT = ProductRegistryHelper::BranchAliasSetterT< T >
 
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > >
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Protected Member Functions inherited from hcaldqm::DQTask
virtual int _getCalibType (edm::Event const &)
 
virtual bool _isApplicable (edm::Event const &)
 
- Protected Member Functions inherited from DQMOneEDAnalyzer< edm::LuminosityBlockCache< hcaldqm::Cache > >
virtual void dqmEndRun (edm::Run const &, edm::EventSetup const &)
 
- Protected Member Functions inherited from edm::ProducerBase
template<Transition Tr = Transition::Event>
auto produces (std::string instanceName) noexcept
 declare what type of product will make and with which optional label More...
 
template<Transition B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<BranchType B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces ()
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces ()
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces ()
 
template<Transition Tr = Transition::Event>
auto produces () noexcept
 
ProducesCollector producesCollector ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< Bconsumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes ()
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag)
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 
- Protected Attributes inherited from hcaldqm::DQTask
ContainerI _cEvsPerLS
 
ContainerI _cEvsTotal
 
ContainerS _cProcessingTypeName
 
ContainerS _cRunKeyName
 
ContainerI _cRunKeyVal
 
edm::ESHandle< HcalDbService_dbService
 
HcalElectronicsMap const * _emap = nullptr
 
int _procLSs
 
edm::InputTag _tagRaw
 
edm::EDGetTokenT< FEDRawDataCollection_tokRaw
 
std::vector< uint32_t > _vcdaqEids
 
ContainerXXX< uint32_t > _xQuality
 
edm::ESGetToken< HcalChannelQuality, HcalChannelQualityRcdhcalChannelQualityToken_
 
edm::ESGetToken< HcalDbService, HcalDbRecordhcalDbServiceToken_
 
edm::ESGetToken< RunInfo, RunInfoRcdrunInfoToken_
 
- Protected Attributes inherited from DQMOneEDAnalyzer< edm::LuminosityBlockCache< hcaldqm::Cache > >
edm::EDPutTokenT< DQMTokenrunToken_
 
- Protected Attributes inherited from hcaldqm::DQModule
int _currentLS
 
int _debug
 
int _evsPerLS
 
int _evsTotal
 
Logger _logger
 
int _maxLS
 
ModuleType _mtype
 
std::string _name
 
ProcessingType _ptype
 
std::string _runkeyName
 
int _runkeyVal
 
std::string _subsystem
 

Detailed Description

Definition at line 22 of file HcalGPUComparisonTask.cc.

Constructor & Destructor Documentation

◆ HcalGPUComparisonTask()

HcalGPUComparisonTask::HcalGPUComparisonTask ( edm::ParameterSet const &  ps)

Definition at line 49 of file HcalGPUComparisonTask.cc.

50  : DQTask(ps),
51  tagHBHE_ref_(ps.getUntrackedParameter<edm::InputTag>("tagHBHE_ref", edm::InputTag("hltHbhereco@cpu"))),
52  tagHBHE_target_(ps.getUntrackedParameter<edm::InputTag>("tagHBHE_target", edm::InputTag("hltHbhereco@cuda"))),
53  tokHBHE_ref_(consumes<HBHERecHitCollection>(tagHBHE_ref_)),
54  tokHBHE_target_(consumes<HBHERecHitCollection>(tagHBHE_target_)),
55  hcalDbServiceToken_(esConsumes<HcalDbService, HcalDbRecord, edm::Transition::BeginRun>()) {}
DQTask(edm::ParameterSet const &)
Definition: DQTask.cc:8
edm::EDGetTokenT< HBHERecHitCollection > tokHBHE_target_
edm::EDGetTokenT< HBHERecHitCollection > tokHBHE_ref_
edm::ESGetToken< HcalDbService, HcalDbRecord > hcalDbServiceToken_

◆ ~HcalGPUComparisonTask()

HcalGPUComparisonTask::~HcalGPUComparisonTask ( )
overridedefault

Member Function Documentation

◆ _process()

void HcalGPUComparisonTask::_process ( edm::Event const &  e,
edm::EventSetup const &   
)
overrideprivatevirtual

Implements hcaldqm::DQTask.

Definition at line 95 of file HcalGPUComparisonTask.cc.

References hcaldqm::DQModule::_currentLS, MillePedeFileConverter_cfg::e, hcalRecHitTable_cff::energy, energyDiffGPUCPU_depth_, energyDiffGPUCPU_subdet_, energyGPUvsCPU_subdet_, hcaldqm::Container2D::fill(), hcaldqm::ContainerProf2D::fill(), hcaldqm::Container1D::fill(), ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it, tokHBHE_ref_, and tokHBHE_target_.

95  {
96  auto const chbhe_ref = e.getHandle(tokHBHE_ref_);
97  auto const chbhe_target = e.getHandle(tokHBHE_target_);
98 
99  if (not(chbhe_ref.isValid() and chbhe_target.isValid())) {
100  edm::LogWarning("HcalGPUComparisonTask")
101  << "Either CPU or GPU RecHit Collection is unavailable, will not fill this event.";
102  return;
103  }
104 
105  auto lumiCache = luminosityBlockCache(e.getLuminosityBlock().index());
106  _currentLS = lumiCache->currentLS;
107 
108  std::map<HcalDetId, double> mRecHitEnergy;
109 
110  for (HBHERecHitCollection::const_iterator it = chbhe_ref->begin(); it != chbhe_ref->end(); ++it) {
111  double energy = it->energy();
112 
113  // Explicit check on the DetIds present in the Collection
114  HcalDetId did = it->id();
115 
116  if (mRecHitEnergy.find(did) == mRecHitEnergy.end())
117  mRecHitEnergy.insert(std::make_pair(did, energy));
118  else
119  edm::LogError("HcalGPUComparisonTask") << "Duplicate Rechit from the same HcalDetId";
120  ;
121  }
122 
123  for (HBHERecHitCollection::const_iterator it = chbhe_target->begin(); it != chbhe_target->end(); ++it) {
124  double energy = it->energy();
125  HcalDetId did = it->id();
126 
127  if (mRecHitEnergy.find(did) != mRecHitEnergy.end()) {
128  energyGPUvsCPU_subdet_.fill(did, mRecHitEnergy[did], energy);
129 
130  if (mRecHitEnergy[did] != 0.) {
131  energyDiffGPUCPU_subdet_.fill(did, (energy - mRecHitEnergy[did]) / mRecHitEnergy[did]);
132  if (energy > 0.1)
133  energyDiffGPUCPU_depth_.fill(did, (energy - mRecHitEnergy[did]) / mRecHitEnergy[did]);
134  } else if (mRecHitEnergy[did] == 0. && energy == 0.) {
136  if (energy > 0.1)
137  energyDiffGPUCPU_depth_.fill(did, 0.);
138  } else {
139  energyDiffGPUCPU_subdet_.fill(did, -1.);
140  if (energy > 0.1)
141  energyDiffGPUCPU_depth_.fill(did, -1.);
142  }
143 
144  mRecHitEnergy.erase(did);
145  } else {
146  if (energy > 2.)
147  edm::LogError("HcalGPUComparisonTask")
148  << "Energetic GPU Rechit exist, but not reconstructed by CPU. DetId = " << did;
149  }
150  }
151  if (!mRecHitEnergy.empty()) {
152  for (auto const& rhpair : mRecHitEnergy) {
153  if (rhpair.second > 2.)
154  edm::LogError("HcalGPUComparisonTask")
155  << "Energetic CPU Rechit exist, but not reconstructed by GPU. DetId = " << rhpair.first;
156  }
157  }
158 }
void fill(HcalDetId const &) override
std::vector< T >::const_iterator const_iterator
hcaldqm::Container2D energyGPUvsCPU_subdet_
Log< level::Error, false > LogError
edm::EDGetTokenT< HBHERecHitCollection > tokHBHE_target_
virtual void fill(uint32_t)
Definition: Container1D.cc:73
edm::EDGetTokenT< HBHERecHitCollection > tokHBHE_ref_
hcaldqm::ContainerProf2D energyDiffGPUCPU_depth_
void fill(HcalDetId const &) override
Definition: Container2D.cc:52
hcaldqm::Container1D energyDiffGPUCPU_subdet_
Log< level::Warning, false > LogWarning

◆ _resetMonitors()

void HcalGPUComparisonTask::_resetMonitors ( hcaldqm::UpdateFreq  uf)
overrideprivatevirtual

Reimplemented from hcaldqm::DQTask.

Definition at line 93 of file HcalGPUComparisonTask.cc.

93 { DQTask::_resetMonitors(uf); }

◆ bookHistograms()

void HcalGPUComparisonTask::bookHistograms ( DQMStore::IBooker ib,
edm::Run const &  r,
edm::EventSetup const &  es 
)
overridevirtual

Reimplemented from hcaldqm::DQTask.

Definition at line 57 of file HcalGPUComparisonTask.cc.

References hcaldqm::DQTask::_emap, hcaldqm::DQModule::_name, hcaldqm::DQModule::_subsystem, hcaldqm::ContainerProf2D::book(), hcaldqm::Container2D::book(), hcaldqm::Container1D::book(), bookHistograms(), createIOVlist::dbs, energyDiffGPUCPU_depth_, energyDiffGPUCPU_subdet_, energyGPUvsCPU_subdet_, hcaldqm::quantity::fCPUenergy, hcaldqm::hashfunctions::fdepth, hcaldqm::quantity::fDiffRatio, hcaldqm::quantity::fGPUenergy, hcaldqm::quantity::fieta, hcaldqm::quantity::fiphi, hcaldqm::quantity::fN, hcaldqm::hashfunctions::fSubdet, edm::EventSetup::getHandle(), hcalDbServiceToken_, cuy::ib, hcaldqm::ContainerProf2D::initialize(), hcaldqm::Container2D::initialize(), hcaldqm::Container1D::initialize(), and alignCSCRings::r.

59  {
61 
62  // GET WHAT YOU NEED
64  _emap = dbs->getHcalMapping();
65 
66  // Book monitoring elements
68  "EnergyGPUvsCPU",
73  0);
75  "EnergyDiffGPUCPU",
79  0);
81  "EnergyDiffGPUCPU",
86  0);
87 
91 }
virtual void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *qy=new quantity::ValueQuantity(quantity::fN), int debug=0)
Definition: Container1D.cc:33
dbs
Find files in dataset.
hcaldqm::Container2D energyGPUvsCPU_subdet_
example_stream void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
std::string _name
Definition: DQModule.h:42
HcalElectronicsMap const * _emap
Definition: DQTask.h:81
virtual void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="")
Definition: Container1D.cc:592
virtual void initialize(std::string const &folder, hashfunctions::HashType, quantity::Quantity *, quantity::Quantity *, quantity::Quantity *qz=new quantity::ValueQuantity(quantity::fN), int debug=0)
Definition: Container2D.cc:25
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
std::string _subsystem
Definition: DQModule.h:49
hcaldqm::Container1D energyDiffGPUCPU_subdet_
void book(DQMStore::IBooker &, HcalElectronicsMap const *, std::string subsystem="Hcal", std::string aux="") override
Definition: Container2D.cc:567
ib
Definition: cuy.py:661

◆ fillDescriptions()

void HcalGPUComparisonTask::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 177 of file HcalGPUComparisonTask.cc.

References edm::ConfigurationDescriptions::addWithDefaultLabel(), submitPVResolutionJobs::desc, ProducerED_cfi::InputTag, and AlCaHLTBitMon_QueryRunRegistry::string.

177  {
179  desc.addUntracked<std::string>("name", "HcalGPUComparisonTask");
180  desc.addUntracked<int>("debug", 0);
181  desc.addUntracked<int>("runkeyVal", 0);
182  desc.addUntracked<std::string>("runkeyName", "pp_run");
183  desc.addUntracked<int>("ptype", 1);
184  desc.addUntracked<bool>("mtype", true);
185  desc.addUntracked<std::string>("subsystem", "Hcal");
186  desc.addUntracked<edm::InputTag>("tagHBHE_ref", edm::InputTag("hbhereco@cpu"));
187  desc.addUntracked<edm::InputTag>("tagHBHE_target", edm::InputTag("hbhereco@cuda"));
188  desc.addUntracked<edm::InputTag>("tagRaw", edm::InputTag("rawDataCollector"));
189  descriptions.addWithDefaultLabel(desc);
190 }
void addWithDefaultLabel(ParameterSetDescription const &psetDescription)

◆ globalBeginLuminosityBlock()

std::shared_ptr< hcaldqm::Cache > HcalGPUComparisonTask::globalBeginLuminosityBlock ( edm::LuminosityBlock const &  lb,
edm::EventSetup const &  es 
) const
override

Definition at line 160 of file HcalGPUComparisonTask.cc.

161  {
162  return DQTask::globalBeginLuminosityBlock(lb, es);
163 }

◆ globalEndLuminosityBlock()

void HcalGPUComparisonTask::globalEndLuminosityBlock ( edm::LuminosityBlock const &  lb,
edm::EventSetup const &  es 
)
override

Definition at line 165 of file HcalGPUComparisonTask.cc.

References hcaldqm::DQModule::_currentLS, hcaldqm::DQModule::_ptype, hcaldqm::fOnline, and edm::LuminosityBlock::index().

166  {
167  if (_ptype != fOnline)
168  return;
169 
170  auto lumiCache = luminosityBlockCache(lb.index());
171  _currentLS = lumiCache->currentLS;
172 
173  // in the end always do the DQTask::endLumi
174  DQTask::globalEndLuminosityBlock(lb, es);
175 }
ProcessingType _ptype
Definition: DQModule.h:44

Member Data Documentation

◆ energyDiffGPUCPU_depth_

hcaldqm::ContainerProf2D HcalGPUComparisonTask::energyDiffGPUCPU_depth_
private

Definition at line 46 of file HcalGPUComparisonTask.cc.

Referenced by _process(), and bookHistograms().

◆ energyDiffGPUCPU_subdet_

hcaldqm::Container1D HcalGPUComparisonTask::energyDiffGPUCPU_subdet_
private

Definition at line 45 of file HcalGPUComparisonTask.cc.

Referenced by _process(), and bookHistograms().

◆ energyGPUvsCPU_subdet_

hcaldqm::Container2D HcalGPUComparisonTask::energyGPUvsCPU_subdet_
private

Definition at line 44 of file HcalGPUComparisonTask.cc.

Referenced by _process(), and bookHistograms().

◆ hcalDbServiceToken_

edm::ESGetToken<HcalDbService, HcalDbRecord> HcalGPUComparisonTask::hcalDbServiceToken_
private

Definition at line 41 of file HcalGPUComparisonTask.cc.

Referenced by bookHistograms().

◆ tagHBHE_ref_

edm::InputTag HcalGPUComparisonTask::tagHBHE_ref_
private

Definition at line 37 of file HcalGPUComparisonTask.cc.

◆ tagHBHE_target_

edm::InputTag HcalGPUComparisonTask::tagHBHE_target_
private

Definition at line 38 of file HcalGPUComparisonTask.cc.

◆ tokHBHE_ref_

edm::EDGetTokenT<HBHERecHitCollection> HcalGPUComparisonTask::tokHBHE_ref_
private

Definition at line 39 of file HcalGPUComparisonTask.cc.

Referenced by _process().

◆ tokHBHE_target_

edm::EDGetTokenT<HBHERecHitCollection> HcalGPUComparisonTask::tokHBHE_target_
private

Definition at line 40 of file HcalGPUComparisonTask.cc.

Referenced by _process().