#include <Timing.h>
Public Member Functions | |
virtual void | addToCPUTime (StreamID id, double iTime) override |
Timing (ParameterSet const &, ActivityRegistry &) | |
~Timing () | |
Public Member Functions inherited from edm::TimingServiceBase | |
TimingServiceBase () | |
virtual | ~TimingServiceBase () |
Static Public Member Functions | |
static void | fillDescriptions (edm::ConfigurationDescriptions &descriptions) |
Private Member Functions | |
void | postBeginJob () |
void | postEndJob () |
void | postEvent (StreamContext const &) |
void | postModule (StreamContext const &, ModuleCallingContext const &) |
void | preEvent (StreamContext const &) |
void | preModule (StreamContext const &, ModuleCallingContext const &) |
Private Attributes | |
std::vector< double > | curr_events_cpu_ |
std::vector< double > | curr_events_time_ |
double | curr_job_cpu_ |
double | curr_job_time_ |
std::vector< double > | max_events_cpu_ |
std::vector< double > | max_events_time_ |
std::vector< double > | min_events_cpu_ |
std::vector< double > | min_events_time_ |
bool | report_summary_ |
bool | summary_only_ |
std::atomic< unsigned long > | total_event_count_ |
std::vector< double > | total_events_cpu_ |
edm::service::Timing::Timing | ( | ParameterSet const & | iPS, |
ActivityRegistry & | iRegistry | ||
) |
Definition at line 68 of file Timing.cc.
References edm::signalslot::Signal< T >::connect(), curr_events_cpu_, curr_events_time_, max_events_cpu_, max_events_time_, edm::service::SystemBounds::maxNumberOfStreams(), min_events_cpu_, min_events_time_, postBeginJob(), postEndJob(), postEvent(), postModule(), edm::ActivityRegistry::preallocateSignal_, preEvent(), preModule(), summary_only_, total_events_cpu_, edm::ActivityRegistry::watchPostBeginJob(), edm::ActivityRegistry::watchPostEndJob(), edm::ActivityRegistry::watchPostEvent(), edm::ActivityRegistry::watchPostModuleEvent(), edm::ActivityRegistry::watchPreEvent(), and edm::ActivityRegistry::watchPreModuleEvent().
|
overridevirtual |
Extra CPU time used by a job but not seen by cmsRun The value should be in seconds. This function is safe to call from multiple threads
Implements edm::TimingServiceBase.
Definition at line 107 of file Timing.cc.
References curr_events_cpu_.
|
static |
Definition at line 113 of file Timing.cc.
References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::addUntracked(), and edm::ConfigurationDescriptions::setComment().
|
private |
Definition at line 124 of file Timing.cc.
References curr_job_cpu_, curr_job_time_, edm::service::getCPU(), edm::service::getTime(), and summary_only_.
Referenced by Timing().
|
private |
Definition at line 139 of file Timing.cc.
References curr_job_cpu_, curr_job_time_, edm::service::d2str(), edm::service::getCPU(), edm::service::getTime(), max_events_cpu_, max_events_time_, min_events_cpu_, min_events_time_, report_summary_, edmStreamStallGrapher::t, total_event_count_, and total_events_cpu_.
Referenced by Timing().
|
private |
Definition at line 198 of file Timing.cc.
References curr_events_cpu_, curr_events_time_, edm::StreamContext::eventID(), edm::service::getCPU(), edm::service::getTime(), cmsHarvester::index, max_events_cpu_, max_events_time_, min_events_cpu_, min_events_time_, edm::StreamContext::streamID(), summary_only_, total_event_count_, total_events_cpu_, and edm::StreamID::value().
Referenced by Timing().
|
private |
Definition at line 227 of file Timing.cc.
References edm::StreamContext::eventID(), edm::service::getTime(), edm::ModuleCallingContext::moduleDescription(), edm::service::moduleTimeStack(), and edmStreamStallGrapher::t.
Referenced by Timing().
|
private |
Definition at line 192 of file Timing.cc.
References curr_events_cpu_, curr_events_time_, edm::service::getCPU(), edm::service::getTime(), cmsHarvester::index, edm::StreamContext::streamID(), and edm::StreamID::value().
Referenced by Timing().
|
private |
Definition at line 222 of file Timing.cc.
References edm::service::getTime(), and edm::service::moduleTimeStack().
Referenced by Timing().
|
private |
Definition at line 48 of file Timing.h.
Referenced by addToCPUTime(), postEvent(), preEvent(), and Timing().
|
private |
Definition at line 47 of file Timing.h.
Referenced by postEvent(), preEvent(), and Timing().
|
private |
Definition at line 46 of file Timing.h.
Referenced by postBeginJob(), and postEndJob().
|
private |
Definition at line 45 of file Timing.h.
Referenced by postBeginJob(), and postEndJob().
|
private |
Definition at line 57 of file Timing.h.
Referenced by postEndJob(), postEvent(), and Timing().
|
private |
Definition at line 56 of file Timing.h.
Referenced by postEndJob(), postEvent(), and Timing().
|
private |
Definition at line 59 of file Timing.h.
Referenced by postEndJob(), postEvent(), and Timing().
|
private |
Definition at line 58 of file Timing.h.
Referenced by postEndJob(), postEvent(), and Timing().
|
private |
Definition at line 51 of file Timing.h.
Referenced by postEndJob().
|
private |
Definition at line 50 of file Timing.h.
Referenced by postBeginJob(), postEvent(), and Timing().
|
private |
Definition at line 60 of file Timing.h.
Referenced by postEndJob(), and postEvent().
|
private |
Definition at line 49 of file Timing.h.
Referenced by postEndJob(), postEvent(), and Timing().