Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
5345c62
PerfTools/AllocMonitor: Add customize function for EventAllocMonitor …
gartung Jan 15, 2026
c92bf4d
Add extra arg missing from printReport.
gartung Feb 3, 2026
b842946
Add comma to indicate additional parameters are possible
gartung Feb 3, 2026
17bfa2b
PerfTools/AllocMonitor: Add support for skipped module names in Modul…
gartung Feb 3, 2026
19084de
Document skippedModuleNames parameter
gartung Feb 3, 2026
3865f32
Fix variable name for skipped module names in ModuleEventAllocMonitor
gartung Feb 3, 2026
32be37a
Add support for skipped module names in ModuleEventAllocMonitor confi…
gartung Feb 3, 2026
29e6225
Update module handling in ModuleEventAllocMonitor: adjust nModules co…
gartung Feb 3, 2026
3c09c18
Refactor module handling in ModuleEventAllocMonitor: adjust skipped m…
gartung Feb 3, 2026
10a70d3
Update logging format for skipped modules in ModuleEventAllocMonitor:…
gartung Feb 3, 2026
8066d7a
Fix formatting for skipped module log message and standardize string …
gartung Feb 3, 2026
d228868
code-format
gartung Feb 4, 2026
d4dcd86
Enhance module handling in ModuleEventAllocMonitor: consolidate logic…
gartung Feb 4, 2026
84eeff9
code format
gartung Feb 4, 2026
2a16f49
Fix logic for module retention in ModuleEventAllocMonitor: invert con…
gartung Feb 4, 2026
0efe364
Refactor ModuleEventAllocMonitor: replace vectors with unordered sets…
gartung Feb 4, 2026
581109e
Add missing dictionaries related to PFTauTransverseImpactParameter
makortel Feb 5, 2026
95c8777
Add missing dictionary related to PFTau
makortel Feb 5, 2026
dcc9416
Add support for {pre,post}ClearEvent
Parsifal-2045 Jan 30, 2026
14fa68e
Add support for ModuleTransform signals
Parsifal-2045 Jan 30, 2026
4bc0a4c
Add missing dictionary related to PFCandidate
makortel Feb 5, 2026
7f66003
Add missing dictionary related to SuperCluster and HFEMClusterShape
makortel Feb 5, 2026
39eb168
Refactor ModuleEventAllocMonitor: rename module name vectors for clar…
gartung Feb 6, 2026
b8e0808
Refactor ModuleEventAllocMonitor: replace vectors with unordered sets…
gartung Feb 6, 2026
10ee8c1
Add missing dictionary related to Track
makortel Feb 6, 2026
b01a9ff
Add missing dictionary for std::vector<reco::HcalMuonRecHit>
makortel Feb 6, 2026
41378e8
change exception to warning in cluster seeding
jbsauvan Feb 4, 2026
213b324
Add a missing dictionary related to PFBlock
makortel Feb 6, 2026
546f86e
add "override" identifier to CICADATemplate dtor (and fix #include st…
missirol Feb 7, 2026
9f05530
Merge pull request #50065 from makortel/aodDictionaries
cmsbuild Feb 8, 2026
f785316
Merge pull request #50047 from Parsifal-2045/newSignalsFTS
cmsbuild Feb 8, 2026
f658945
Merge pull request #50068 from missirol/devel_fixCICADATemplateDtor
cmsbuild Feb 8, 2026
ce1e88c
Merge pull request #50034 from gartung/gartung-PerfTools-AllocMonitor…
cmsbuild Feb 8, 2026
6172e86
Merge pull request #50062 from jbsauvan/remove-seeding-exception
cmsbuild Feb 8, 2026
9ef1b80
Merge CMSSW_16_1_X into CMSSW_16_1_EVOLUTION_X.
Dr15Jones Feb 9, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions DataFormats/EgammaReco/src/classes_def.xml
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@
</class>
<class name="edm::helpers::KeyVal<edm::RefProd<std::vector<reco::BasicCluster> >, edm::RefProd<std::vector<reco::ClusterShape> > >"/>

<class name="edm::OneToOne<std::vector<reco::io_v1::SuperCluster>, std::vector<reco::io_v1::HFEMClusterShape>, unsigned int >"/>
<class name="edm::AssociationMap<edm::OneToOne<std::vector<reco::io_v1::SuperCluster>, std::vector<reco::io_v1::HFEMClusterShape>, unsigned int > >">
<field name="transientMap_" transient="true" />
</class>
Expand Down
1 change: 1 addition & 0 deletions DataFormats/MuonReco/src/classes_def.xml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ initial version number of a class which has never been stored before.
<class name="reco::HcalMuonRecHit" ClassVersion="3">
<version ClassVersion="3" checksum="2031556424"/>
</class>
<class name="std::vector<reco::HcalMuonRecHit>"/>
<class name="reco::MuonChamberMatch" ClassVersion="14">
<version ClassVersion="14" checksum="3579435038"/>
<version ClassVersion="13" checksum="2674954213"/>
Expand Down
1 change: 1 addition & 0 deletions DataFormats/ParticleFlowCandidate/src/classes_def.xml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
<class name="std::vector<reco::io_v1::PFCandidate>"/>
<class name="edm::Wrapper<reco::io_v1::PFCandidate>"/>
<class name="edm::Wrapper<std::vector<reco::io_v1::PFCandidate> >"/>
<class name="edm::refhelper::FindUsingAdvance<std::vector<reco::io_v1::PFCandidate>,reco::io_v1::PFCandidate>"/>
<class name="reco::PFCandidateRef"/>
<class name="reco::PFCandidateRefProd"/>
<class name="reco::PFCandidateRefVector"/>
Expand Down
1 change: 1 addition & 0 deletions DataFormats/ParticleFlowReco/src/classes_def_2.xml
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,7 @@

<class name="std::vector<reco::io_v1::PFBlock>"/>
<class name="edm::Wrapper<std::vector<reco::io_v1::PFBlock> >"/>
<class name="edm::refhelper::FindUsingAdvance<std::vector<reco::io_v1::PFBlock>,reco::io_v1::PFBlock>"/>
<class name="edm::Ref< std::vector<reco::io_v1::PFBlock>, reco::io_v1::PFBlock, edm::refhelper::FindUsingAdvance<std::vector<reco::io_v1::PFBlock>,reco::io_v1::PFBlock> >"/>
<class name="edm::Ref<std::vector<reco::PFRecTrack>,reco::PFRecTrack,edm::refhelper::FindUsingAdvance<std::vector<reco::PFRecTrack>,reco::PFRecTrack> >"/>
<class name="edm::RefVector<std::vector<reco::PFRecTrack>,reco::PFRecTrack,edm::refhelper::FindUsingAdvance<std::vector<reco::PFRecTrack>,reco::PFRecTrack> >"/>
Expand Down
1 change: 1 addition & 0 deletions DataFormats/TauReco/src/classes_def_2.xml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
<class name="edm::RefVector<std::vector<reco::io_v1::PFTau>,reco::io_v1::PFTau,edm::refhelper::FindUsingAdvance<std::vector<reco::io_v1::PFTau>,reco::io_v1::PFTau> >"/>
<class name="edm::Wrapper<edm::RefVector<std::vector<reco::io_v1::PFTau>,reco::io_v1::PFTau,edm::refhelper::FindUsingAdvance<std::vector<reco::io_v1::PFTau>,reco::io_v1::PFTau> > >"/>
<class name="edm::reftobase::Holder<reco::BaseTau, edm::Ref<std::vector<reco::io_v1::PFTau>,reco::io_v1::PFTau,edm::refhelper::FindUsingAdvance<std::vector<reco::io_v1::PFTau>,reco::io_v1::PFTau> > >" />
<class name="edm::refhelper::FindUsingAdvance<std::vector<reco::io_v1::PFTau>,reco::io_v1::PFTau>"/>
<class name="std::vector<edm::Ref<std::vector<reco::io_v1::PFTau>,reco::io_v1::PFTau,edm::refhelper::FindUsingAdvance<std::vector<reco::io_v1::PFTau>,reco::io_v1::PFTau> > >"/>


Expand Down
2 changes: 2 additions & 0 deletions DataFormats/TauReco/src/classes_def_3.xml
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,7 @@
<class name="edm::RefProd<std::vector<reco::io_v1::PFTauTransverseImpactParameter> >"/>
<class name="edm::RefVector<std::vector<reco::io_v1::PFTauTransverseImpactParameter>,reco::io_v1::PFTauTransverseImpactParameter,edm::refhelper::FindUsingAdvance<std::vector<reco::io_v1::PFTauTransverseImpactParameter>,reco::io_v1::PFTauTransverseImpactParameter> >"/>
<class name="edm::reftobase::Holder<reco::io_v1::PFTauTransverseImpactParameter, edm::Ref<std::vector<reco::io_v1::PFTauTransverseImpactParameter>,reco::io_v1::PFTauTransverseImpactParameter,edm::refhelper::FindUsingAdvance<std::vector<reco::io_v1::PFTauTransverseImpactParameter>,reco::io_v1::PFTauTransverseImpactParameter> > >" />
<class name="edm::refhelper::FindUsingAdvance<std::vector<reco::io_v1::PFTauTransverseImpactParameter>,reco::io_v1::PFTauTransverseImpactParameter>"/>
<class name="edm::Association<std::vector<reco::io_v1::PFTauTransverseImpactParameter> >"/>
<class name="edm::Wrapper<edm::Association<std::vector<reco::io_v1::PFTauTransverseImpactParameter> > >"/>

Expand Down Expand Up @@ -136,6 +137,7 @@
<class name="edm::Association<std::vector<std::vector<reco::VertexRef> > >"/>
<class name="edm::Wrapper<edm::Association<std::vector<std::vector<reco::VertexRef> > > >"/>

<class name="std::vector<edm::Ref<std::vector<reco::PFTauTransverseImpactParameter>,reco::PFTauTransverseImpactParameter,edm::refhelper::FindUsingAdvance<std::vector<reco::PFTauTransverseImpactParameter>,reco::PFTauTransverseImpactParameter> > >"/>
<class name="reco::PFTauTIPAssociation">
<field name="transientVector_" transient="true"/>
</class>
Expand Down
1 change: 1 addition & 0 deletions DataFormats/TrackReco/src/classes_def.xml
Original file line number Diff line number Diff line change
Expand Up @@ -383,6 +383,7 @@

<class name="edm::helpers::KeyVal<edm::RefProd<std::vector<reco::io_v1::Track> >,edm::RefProd<std::vector<reco::io_v1::Track> > >" />

<class name="edm::OneToOne<std::vector<reco::io_v1::Track>,std::vector<reco::io_v1::Track>,unsigned int>"/>
<class name="edm::AssociationMap<edm::OneToOne<std::vector<reco::io_v1::Track>,std::vector<reco::io_v1::Track>,unsigned int> >">
<field name="transientMap_" transient="true" />
</class>
Expand Down
163 changes: 116 additions & 47 deletions HLTrigger/Timer/plugins/FastTimerService.cc
Original file line number Diff line number Diff line change
Expand Up @@ -261,6 +261,7 @@ void FastTimerService::ResourcesPerJob::reset() {
idle.reset();
source.reset();
eventsetup.reset();
cleanup.reset();
event.reset();
for (auto& module : highlight)
module.reset();
Expand All @@ -276,6 +277,7 @@ FastTimerService::ResourcesPerJob& FastTimerService::ResourcesPerJob::operator+=
idle += other.idle;
source += other.source;
eventsetup += other.eventsetup;
cleanup += other.cleanup;
event += other.event;
assert(highlight.size() == other.highlight.size());
for (unsigned int i : boost::irange(0ul, highlight.size()))
Expand Down Expand Up @@ -697,6 +699,7 @@ void FastTimerService::PlotsPerJob::book(dqm::reco::DQMStore::IBooker& booker,
overhead_.book(booker, "overhead", "Overhead", event_ranges, lumisections, byls);
idle_.book(booker, "idle", "Idle", event_ranges, lumisections, byls);
source_.book(booker, "source", "Source", event_ranges, lumisections, byls);
cleanup_.book(booker, "cleanup", "Cleanup", event_ranges, lumisections, byls);

if (transitions) {
lumi_.book(booker, "lumi", "LumiSection transitions", event_ranges, lumisections, byls);
Expand Down Expand Up @@ -733,6 +736,7 @@ void FastTimerService::PlotsPerJob::fill(ProcessCallGraph const& job, ResourcesP
overhead_.fill(data.overhead, ls);
idle_.fill(data.idle, ls);
source_.fill(data.source, ls);
cleanup_.fill(data.cleanup, ls);

// fill highltight plots
for (unsigned int group : boost::irange(0ul, highlight_.size()))
Expand Down Expand Up @@ -834,6 +838,13 @@ FastTimerService::FastTimerService(const edm::ParameterSet& config, edm::Activit
registry.watchPostSourceLumi(this, &FastTimerService::postSourceLumi);
registry.watchPreSourceEvent(this, &FastTimerService::preSourceEvent);
registry.watchPostSourceEvent(this, &FastTimerService::postSourceEvent);
// transform signals
//registry.watchPreModuleTransformPrefetching(this, &FastTimerService::preModuleTransformPrefetching);
//registry.watchPostModuleTransformPrefetching(this, &FastTimerService::postModuleTransformPrefetching);
registry.watchPreModuleTransform(this, &FastTimerService::preModuleTransform);
registry.watchPostModuleTransform(this, &FastTimerService::postModuleTransform);
registry.watchPreModuleTransformAcquiring(this, &FastTimerService::preModuleTransformAcquiring);
registry.watchPostModuleTransformAcquiring(this, &FastTimerService::postModuleTransformAcquiring);
//registry.watchPreModuleConstruction( this, & FastTimerService::preModuleConstruction);
//registry.watchPostModuleConstruction( this, & FastTimerService::postModuleConstruction);
//registry.watchPreModuleBeginJob( this, & FastTimerService::preModuleBeginJob );
Expand Down Expand Up @@ -868,6 +879,9 @@ FastTimerService::FastTimerService(const edm::ParameterSet& config, edm::Activit
registry.watchPostModuleEvent(this, &FastTimerService::postModuleEvent);
registry.watchPreModuleEventDelayedGet(this, &FastTimerService::preModuleEventDelayedGet);
registry.watchPostModuleEventDelayedGet(this, &FastTimerService::postModuleEventDelayedGet);
// cleanup signals
registry.watchPreClearEvent(this, &FastTimerService::preClearEvent);
registry.watchPostClearEvent(this, &FastTimerService::postClearEvent);
registry.watchPreEventReadFromSource(this, &FastTimerService::preEventReadFromSource);
registry.watchPostEventReadFromSource(this, &FastTimerService::postEventReadFromSource);
registry.watchPreESModule(this, &FastTimerService::preESModule);
Expand All @@ -887,6 +901,45 @@ void FastTimerService::unsupportedSignal(const std::string& signal) const {
<< "Please report how to reproduce the issue to cms-hlt@cern.ch .";
}

void FastTimerService::finalizeEventMeasurement(edm::StreamContext const& sc) {
unsigned int sid = sc.streamID();
auto& stream = streams_[sid];

stream.total += stream.cleanup;

auto& process = callgraph_.processDescription();
// measure the event resources as the sum of all modules' resources
auto& data = stream.process.total;
for (unsigned int id : process.modules_) {
data += stream.modules[id].total;
}
stream.total += data;

// add to the event resources those used by source (which is not part of any process)
stream.total += stream.source;

// highlighted modules
for (unsigned int group : boost::irange(0ul, highlight_modules_.size()))
for (unsigned int i : highlight_modules_[group].modules)
stream.highlight[group] += stream.modules[i].total;

// avoid concurrent access to the summary objects
{
std::lock_guard<std::mutex> guard(summary_mutex_);
job_summary_ += stream;
run_summary_[sc.runIndex()] += stream;
}

if (print_event_summary_) {
edm::LogVerbatim out("FastReport");
printEvent(out, stream);
}

if (enable_dqm_) {
plots_->fill(callgraph_, stream, sc.eventID().luminosityBlock());
}
}

void FastTimerService::preGlobalBeginRun(edm::GlobalContext const& gc) {
ignoredSignal(__func__);

Expand Down Expand Up @@ -1291,6 +1344,7 @@ void FastTimerService::printSummary(T& out, ResourcesPerJob const& data, std::st
}
printSummaryLine(out, data.total, data.events, "total");
printSummaryLine(out, data.eventsetup, data.events, "eventsetup");
printSummaryLine(out, data.cleanup, data.events, "cleanup");
printSummaryLine(out, data.overhead, data.events, "other");
printSummaryLine(out, data.idle, data.events, "idle");
out << '\n';
Expand All @@ -1309,6 +1363,7 @@ void FastTimerService::printSummary(T& out, ResourcesPerJob const& data, std::st
}
printSummaryLine(out, data.total, data.events, "total");
printSummaryLine(out, data.eventsetup, data.events, "eventsetup");
printSummaryLine(out, data.cleanup, data.events, "cleanup");
printSummaryLine(out, data.overhead, data.events, "other");
printSummaryLine(out, data.idle, data.events, "idle");
out << '\n';
Expand Down Expand Up @@ -1378,6 +1433,7 @@ void FastTimerService::writeSummaryJSON(ResourcesPerJob const& data, std::string
}

// add an entry for the non-event transitions, modules, and idle states
j["modules"].push_back(encodeToJSON("cleanup", "cleanup", data.events, data.cleanup));
j["modules"].push_back(encodeToJSON("other", "other", data.events, data.overhead));
j["modules"].push_back(encodeToJSON("eventsetup", "eventsetup", data.events, data.eventsetup));
j["modules"].push_back(encodeToJSON("idle", "idle", data.events, data.idle));
Expand All @@ -1388,60 +1444,15 @@ void FastTimerService::writeSummaryJSON(ResourcesPerJob const& data, std::string

void FastTimerService::preEvent(edm::StreamContext const& sc) { ignoredSignal(__func__); }

void FastTimerService::postEvent(edm::StreamContext const& sc) {
ignoredSignal(__func__);

unsigned int sid = sc.streamID();
auto& stream = streams_[sid];
auto& process = callgraph_.processDescription();

// measure the event resources as the sum of all modules' resources
auto& data = stream.process.total;
for (unsigned int id : process.modules_) {
data += stream.modules[id].total;
}
stream.total += data;

// handle the summaries and fill the plots

// measure the event resources explicitly
stream.event_measurement.measure_and_store(stream.event);

// add to the event resources those used by source (which is not part of any process)
stream.total += stream.source;

// highlighted modules
for (unsigned int group : boost::irange(0ul, highlight_modules_.size()))
for (unsigned int i : highlight_modules_[group].modules)
stream.highlight[group] += stream.modules[i].total;

// avoid concurrent access to the summary objects
{
std::lock_guard<std::mutex> guard(summary_mutex_);
job_summary_ += stream;
run_summary_[sc.runIndex()] += stream;
}

if (print_event_summary_) {
edm::LogVerbatim out("FastReport");
printEvent(out, stream);
}

if (enable_dqm_) {
plots_->fill(callgraph_, stream, sc.eventID().luminosityBlock());
}
}
void FastTimerService::postEvent(edm::StreamContext const& sc) { ignoredSignal(__func__); }

void FastTimerService::preSourceEvent(edm::StreamID sid) {
// clear the event counters
auto& stream = streams_[sid];
stream.reset();
++stream.events;

// reuse the same measurement for the Source module and for the explicit begin of the Event
auto& measurement = thread();
measurement.measure_and_accumulate(stream.overhead);
stream.event_measurement = measurement;
thread().measure_and_accumulate(stream.overhead);
}

void FastTimerService::postSourceEvent(edm::StreamID sid) {
Expand Down Expand Up @@ -1498,6 +1509,50 @@ void FastTimerService::postModuleEventAcquire(edm::StreamContext const& sc, edm:
thread().measure_and_store(module.total);
}

// transform signals
void FastTimerService::preModuleTransformPrefetching(edm::StreamContext const& sc,
edm::ModuleCallingContext const& mcc) {
ignoredSignal(__func__);
}

void FastTimerService::postModuleTransformPrefetching(edm::StreamContext const& sc,
edm::ModuleCallingContext const& mcc) {
ignoredSignal(__func__);
}

void FastTimerService::preModuleTransformAcquiring(edm::StreamContext const& sc, edm::ModuleCallingContext const& mcc) {
unsigned int sid = sc.streamID().value();
auto& stream = streams_[sid];
thread().measure_and_accumulate(stream.overhead);
}

void FastTimerService::postModuleTransformAcquiring(edm::StreamContext const& sc,
edm::ModuleCallingContext const& mcc) {
edm::ModuleDescription const& md = *mcc.moduleDescription();
unsigned int id = md.id();
unsigned int sid = sc.streamID().value();
auto& stream = streams_[sid];
auto& module = stream.modules[id];

thread().measure_and_accumulate(module.total);
}

void FastTimerService::preModuleTransform(edm::StreamContext const& sc, edm::ModuleCallingContext const& mcc) {
unsigned int sid = sc.streamID().value();
auto& stream = streams_[sid];
thread().measure_and_accumulate(stream.overhead);
}

void FastTimerService::postModuleTransform(edm::StreamContext const& sc, edm::ModuleCallingContext const& mcc) {
edm::ModuleDescription const& md = *mcc.moduleDescription();
unsigned int id = md.id();
unsigned int sid = sc.streamID().value();
auto& stream = streams_[sid];
auto& module = stream.modules[id];

thread().measure_and_accumulate(module.total);
}

void FastTimerService::preModuleEvent(edm::StreamContext const& sc, edm::ModuleCallingContext const& mcc) {
unsigned int sid = sc.streamID().value();
auto& stream = streams_[sid];
Expand Down Expand Up @@ -1650,6 +1705,20 @@ void FastTimerService::postESModule(edm::eventsetup::EventSetupRecordKey const&,
}
}

void FastTimerService::preClearEvent(edm::StreamContext const& sc) {
auto& stream = streams_[sc.streamID()];
thread().measure_and_accumulate(stream.overhead);
}

void FastTimerService::postClearEvent(edm::StreamContext const& sc) {
unsigned int sid = sc.streamID();
auto& stream = streams_[sid];
// measure the cleanup resources first
thread().measure_and_store(stream.cleanup);

finalizeEventMeasurement(sc);
}

FastTimerService::ThreadGuard::ThreadGuard() {
auto err = ::pthread_key_create(&key_, retire_thread);
if (err) {
Expand Down
21 changes: 19 additions & 2 deletions HLTrigger/Timer/plugins/FastTimerService.h
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,8 @@ class FastTimerService : public tbb::task_scheduler_observer {
private:
void ignoredSignal(const std::string& signal) const;
void unsupportedSignal(const std::string& signal) const;
// helper function for event measurement finalization
void finalizeEventMeasurement(edm::StreamContext const&);

// these signal pairs are not guaranteed to happen in the same thread

Expand Down Expand Up @@ -168,12 +170,26 @@ class FastTimerService : public tbb::task_scheduler_observer {
void preModuleEventDelayedGet(edm::StreamContext const&, edm::ModuleCallingContext const&);
void postModuleEventDelayedGet(edm::StreamContext const&, edm::ModuleCallingContext const&);

// transform
void preModuleTransformPrefetching(edm::StreamContext const&, edm::ModuleCallingContext const&);
void postModuleTransformPrefetching(edm::StreamContext const&, edm::ModuleCallingContext const&);

void preModuleTransform(edm::StreamContext const&, edm::ModuleCallingContext const&);
void postModuleTransform(edm::StreamContext const&, edm::ModuleCallingContext const&);

void preModuleTransformAcquiring(edm::StreamContext const&, edm::ModuleCallingContext const&);
void postModuleTransformAcquiring(edm::StreamContext const&, edm::ModuleCallingContext const&);

void preEventReadFromSource(edm::StreamContext const&, edm::ModuleCallingContext const&);
void postEventReadFromSource(edm::StreamContext const&, edm::ModuleCallingContext const&);

void preESModule(edm::eventsetup::EventSetupRecordKey const&, edm::ESModuleCallingContext const&);
void postESModule(edm::eventsetup::EventSetupRecordKey const&, edm::ESModuleCallingContext const&);

// cleanup
void preClearEvent(edm::StreamContext const&);
void postClearEvent(edm::StreamContext const&);

// inherited from TBB task_scheduler_observer
void on_scheduler_entry(bool worker) final;
void on_scheduler_exit(bool worker) final;
Expand Down Expand Up @@ -311,8 +327,8 @@ class FastTimerService : public tbb::task_scheduler_observer {
AtomicResources eventsetup;
AtomicResources idle;
AtomicResources source;
Resources event; // total time etc. spent between preSourceEvent and postEvent
Measurement event_measurement;
Resources cleanup; // total time etc. spent between preClearEvent and postClearEvent
Resources event; // total time etc. spent between preSourceEvent and postEvent
std::vector<Resources> highlight;
std::vector<ResourcesPerModule> modules;
// Before the Framework SubProcess feature was removed, the following data
Expand Down Expand Up @@ -440,6 +456,7 @@ class FastTimerService : public tbb::task_scheduler_observer {
PlotsPerElement overhead_;
PlotsPerElement idle_;
PlotsPerElement source_;
PlotsPerElement cleanup_;
// resources spent in the modules' lumi and run transitions
PlotsPerElement lumi_;
PlotsPerElement run_;
Expand Down
5 changes: 3 additions & 2 deletions L1Trigger/L1TGlobal/interface/CICADATemplate.h
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
#ifndef L1Trigger_L1TGlobal_CICADATemplate_h
#define L1Trigger_L1TGlobal_CICADATemplate_h

#include <ostream>
#include <string>
#include <iosfwd>
#include <vector>

#include "L1Trigger/L1TGlobal/interface/GlobalCondition.h"

Expand All @@ -12,7 +13,7 @@ class CICADATemplate : public GlobalCondition {
CICADATemplate(const std::string&);
CICADATemplate(const std::string&, const l1t::GtConditionType&);
CICADATemplate(const CICADATemplate&);
~CICADATemplate() = default;
~CICADATemplate() override = default;

CICADATemplate& operator=(const CICADATemplate&);

Expand Down
Loading