CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
FastTimerService::ResourcesPerJob Struct Reference

Public Member Functions

ResourcesPerJob operator+ (ResourcesPerJob const &other) const
 
ResourcesPerJoboperator+= (ResourcesPerJob const &other)
 
void reset ()
 
 ResourcesPerJob ()=default
 
 ResourcesPerJob (ProcessCallGraph const &job, std::vector< GroupOfModules > const &groups)
 

Public Attributes

Resources event
 
Measurement event_measurement
 
unsigned events
 
std::vector< Resourceshighlight
 
std::vector< ResourcesPerModulemodules
 
AtomicResources overhead
 
std::vector< ResourcesPerProcessprocesses
 
Resources total
 

Detailed Description

Definition at line 297 of file FastTimerService.h.

Constructor & Destructor Documentation

◆ ResourcesPerJob() [1/2]

FastTimerService::ResourcesPerJob::ResourcesPerJob ( )
default

◆ ResourcesPerJob() [2/2]

FastTimerService::ResourcesPerJob::ResourcesPerJob ( ProcessCallGraph const &  job,
std::vector< GroupOfModules > const &  groups 
)

Definition at line 256 of file FastTimerService.cc.

258  : total(), overhead(), event(), highlight(groups.size()), modules(job.size()), processes(), events(0) {
259  processes.reserve(job.processes().size());
260  for (auto const& process : job.processes())
261  processes.emplace_back(process);
262 }

References LaserDQM_cfg::process, ProcessCallGraph::processes(), and processes.

Member Function Documentation

◆ operator+()

FastTimerService::ResourcesPerJob FastTimerService::ResourcesPerJob::operator+ ( ResourcesPerJob const &  other) const

Definition at line 294 of file FastTimerService.cc.

294  {
295  ResourcesPerJob result(*this);
296  result += other;
297  return result;
298 }

References trackingPlots::other, and mps_fire::result.

◆ operator+=()

FastTimerService::ResourcesPerJob & FastTimerService::ResourcesPerJob::operator+= ( ResourcesPerJob const &  other)

Definition at line 277 of file FastTimerService.cc.

277  {
278  total += other.total;
279  overhead += other.overhead;
280  event += other.event;
281  assert(highlight.size() == other.highlight.size());
282  for (unsigned int i : boost::irange(0ul, highlight.size()))
283  highlight[i] += other.highlight[i];
284  assert(modules.size() == other.modules.size());
285  for (unsigned int i : boost::irange(0ul, modules.size()))
286  modules[i] += other.modules[i];
287  assert(processes.size() == other.processes.size());
288  for (unsigned int i : boost::irange(0ul, processes.size()))
289  processes[i] += other.processes[i];
290  events += other.events;
291  return *this;
292 }

References cms::cuda::assert(), patZpeak::events, mps_fire::i, trackingPlots::other, dqmiodatasetharvest::processes, and dqmMemoryStats::total.

◆ reset()

void FastTimerService::ResourcesPerJob::reset ( void  )

Definition at line 264 of file FastTimerService.cc.

264  {
265  total.reset();
266  overhead.reset();
267  event.reset();
268  for (auto& module : highlight)
269  module.reset();
270  for (auto& module : modules)
271  module.reset();
272  for (auto& process : processes)
273  process.reset();
274  events = 0;
275 }

References patZpeak::events, LaserDQM_cfg::process, dqmiodatasetharvest::processes, and dqmMemoryStats::total.

Member Data Documentation

◆ event

Resources FastTimerService::ResourcesPerJob::event

◆ event_measurement

Measurement FastTimerService::ResourcesPerJob::event_measurement

Definition at line 309 of file FastTimerService.h.

◆ events

unsigned FastTimerService::ResourcesPerJob::events

◆ highlight

std::vector<Resources> FastTimerService::ResourcesPerJob::highlight

Definition at line 310 of file FastTimerService.h.

◆ modules

std::vector<ResourcesPerModule> FastTimerService::ResourcesPerJob::modules

Definition at line 311 of file FastTimerService.h.

◆ overhead

AtomicResources FastTimerService::ResourcesPerJob::overhead

Definition at line 307 of file FastTimerService.h.

◆ processes

std::vector<ResourcesPerProcess> FastTimerService::ResourcesPerJob::processes

Definition at line 312 of file FastTimerService.h.

Referenced by ResourcesPerJob().

◆ total

Resources FastTimerService::ResourcesPerJob::total

Definition at line 306 of file FastTimerService.h.

FastTimerService::ResourcesPerJob::highlight
std::vector< Resources > highlight
Definition: FastTimerService.h:310
mps_fire.i
i
Definition: mps_fire.py:355
FastTimerService::ResourcesPerJob::ResourcesPerJob
ResourcesPerJob()=default
FastTimerService::ResourcesPerJob::modules
std::vector< ResourcesPerModule > modules
Definition: FastTimerService.h:311
modules
Definition: ZHLTMatchFilter.cc:17
cms::cuda::assert
assert(be >=bs)
FastTimerService::AtomicResources::reset
void reset()
Definition: FastTimerService.cc:134
FastTimerService::ResourcesPerJob::event
Resources event
Definition: FastTimerService.h:308
FastTimerService::ResourcesPerJob::overhead
AtomicResources overhead
Definition: FastTimerService.h:307
trackingPlots.other
other
Definition: trackingPlots.py:1465
FastTimerService::ResourcesPerJob::processes
std::vector< ResourcesPerProcess > processes
Definition: FastTimerService.h:312
LaserDQM_cfg.process
process
Definition: LaserDQM_cfg.py:3
FastTimerService::ResourcesPerJob::total
Resources total
Definition: FastTimerService.h:306
module
Definition: vlib.h:198
FastTimerService::Resources::reset
void reset()
Definition: FastTimerService.cc:85
mps_fire.result
result
Definition: mps_fire.py:303
FastTimerService::ResourcesPerJob::events
unsigned events
Definition: FastTimerService.h:313