CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
edm::service::Timing Class Reference
Inheritance diagram for edm::service::Timing:
edm::TimingServiceBase

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_time_
 
double curr_job_cpu_
 
double curr_job_time_
 
std::atomic< double > last_run_cpu_
 
std::atomic< double > last_run_time_
 
std::vector< double > max_events_time_
 
std::vector< double > min_events_time_
 
bool report_summary_
 
std::vector< double > sum_events_time_
 
bool summary_only_
 
std::atomic< unsigned long > total_event_count_
 

Detailed Description

Definition at line 36 of file Timing.cc.

Constructor & Destructor Documentation

edm::service::Timing::Timing ( ParameterSet const &  iPS,
ActivityRegistry iRegistry 
)

Definition at line 113 of file Timing.cc.

edm::service::Timing::~Timing ( )

Definition at line 147 of file Timing.cc.

Member Function Documentation

void edm::service::Timing::addToCPUTime ( StreamID  id,
double  iTime 
)
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 150 of file Timing.cc.

void edm::service::Timing::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 156 of file Timing.cc.

void edm::service::Timing::postBeginJob ( )
private

Definition at line 167 of file Timing.cc.

void edm::service::Timing::postEndJob ( )
private

Definition at line 182 of file Timing.cc.

void edm::service::Timing::postEvent ( StreamContext const &  iStream)
private

Definition at line 234 of file Timing.cc.

void edm::service::Timing::postModule ( StreamContext const &  iStream,
ModuleCallingContext const &  iModule 
)
private

Definition at line 258 of file Timing.cc.

void edm::service::Timing::preEvent ( StreamContext const &  iStream)
private

Definition at line 229 of file Timing.cc.

void edm::service::Timing::preModule ( StreamContext const &  ,
ModuleCallingContext const &   
)
private

Definition at line 253 of file Timing.cc.

Member Data Documentation

std::vector<double> edm::service::Timing::curr_events_time_
private

Definition at line 61 of file Timing.cc.

double edm::service::Timing::curr_job_cpu_
private

Definition at line 57 of file Timing.cc.

double edm::service::Timing::curr_job_time_
private

Definition at line 56 of file Timing.cc.

std::atomic<double> edm::service::Timing::last_run_cpu_
private

Definition at line 60 of file Timing.cc.

std::atomic<double> edm::service::Timing::last_run_time_
private

Definition at line 59 of file Timing.cc.

std::vector<double> edm::service::Timing::max_events_time_
private

Definition at line 68 of file Timing.cc.

std::vector<double> edm::service::Timing::min_events_time_
private

Definition at line 69 of file Timing.cc.

bool edm::service::Timing::report_summary_
private

Definition at line 63 of file Timing.cc.

std::vector<double> edm::service::Timing::sum_events_time_
private

Definition at line 70 of file Timing.cc.

bool edm::service::Timing::summary_only_
private

Definition at line 62 of file Timing.cc.

std::atomic<unsigned long> edm::service::Timing::total_event_count_
private

Definition at line 71 of file Timing.cc.