ATLAS Offline Software
Public Types | Public Member Functions | Public Attributes | List of all members
PMonMT::EventLevelData Struct Reference

#include <PerfMonMTUtils.h>

Collaboration diagram for PMonMT::EventLevelData:

Public Types

typedef std::map< uint64_t, SnapshotMeasurementEventMeasMap_t
 

Public Member Functions

void recordEvent (const SnapshotMeasurement &meas, const int eventCount)
 
void set_wall_time_offset (const double wall_time_offset)
 
EventMeasMap_t getEventLevelData () const
 
uint64_t getNMeasurements () const
 
double getEventLevelCpuTime (const uint64_t event_count) const
 
double getEventLevelWallTime (const uint64_t event_count) const
 
int64_t getEventLevelMemory (const uint64_t event_count, const std::string &stat) const
 
int64_t getEventLevelMemoryMax (const std::string &stat) const
 

Public Attributes

EventMeasMap_t m_eventLevelDeltaMap
 
double m_offset_wall {}
 

Detailed Description

Definition at line 191 of file PerfMonMTUtils.h.

Member Typedef Documentation

◆ EventMeasMap_t

Definition at line 194 of file PerfMonMTUtils.h.

Member Function Documentation

◆ getEventLevelCpuTime()

double PMonMT::EventLevelData::getEventLevelCpuTime ( const uint64_t  event_count) const
inline

Definition at line 223 of file PerfMonMTUtils.h.

223  {
224  return m_eventLevelDeltaMap.at(event_count).cpu_time;
225  }

◆ getEventLevelData()

EventMeasMap_t PMonMT::EventLevelData::getEventLevelData ( ) const
inline

Definition at line 215 of file PerfMonMTUtils.h.

215  {
216  return m_eventLevelDeltaMap;
217  }

◆ getEventLevelMemory()

int64_t PMonMT::EventLevelData::getEventLevelMemory ( const uint64_t  event_count,
const std::string &  stat 
) const
inline

Definition at line 231 of file PerfMonMTUtils.h.

232  {
233  return m_eventLevelDeltaMap.at(event_count).mem_stats.at(stat);
234  }

◆ getEventLevelMemoryMax()

int64_t PMonMT::EventLevelData::getEventLevelMemoryMax ( const std::string &  stat) const
inline

Definition at line 236 of file PerfMonMTUtils.h.

236  {
237  int64_t result = 0;
238  for (const auto& it : getEventLevelData()) {
239  if (it.second.mem_stats.at(stat) > result) {
240  result = it.second.mem_stats.at(stat);
241  }
242  }
243  return result;
244  }

◆ getEventLevelWallTime()

double PMonMT::EventLevelData::getEventLevelWallTime ( const uint64_t  event_count) const
inline

Definition at line 227 of file PerfMonMTUtils.h.

227  {
228  return m_eventLevelDeltaMap.at(event_count).wall_time;
229  }

◆ getNMeasurements()

uint64_t PMonMT::EventLevelData::getNMeasurements ( ) const
inline

Definition at line 219 of file PerfMonMTUtils.h.

219  {
220  return m_eventLevelDeltaMap.size();
221  }

◆ recordEvent()

void PMonMT::EventLevelData::recordEvent ( const SnapshotMeasurement meas,
const int  eventCount 
)
inline

Definition at line 198 of file PerfMonMTUtils.h.

198  {
199 
200  // Timing
201  m_eventLevelDeltaMap[eventCount].cpu_time = meas.cpu_time;
202  m_eventLevelDeltaMap[eventCount].wall_time = meas.wall_time - m_offset_wall;
203 
204  // Memory
205  m_eventLevelDeltaMap[eventCount].mem_stats = meas.mem_stats;
206 
207  }

◆ set_wall_time_offset()

void PMonMT::EventLevelData::set_wall_time_offset ( const double  wall_time_offset)
inline

Definition at line 213 of file PerfMonMTUtils.h.

213 { m_offset_wall = wall_time_offset; }

Member Data Documentation

◆ m_eventLevelDeltaMap

EventMeasMap_t PMonMT::EventLevelData::m_eventLevelDeltaMap

Definition at line 195 of file PerfMonMTUtils.h.

◆ m_offset_wall

double PMonMT::EventLevelData::m_offset_wall {}

Definition at line 210 of file PerfMonMTUtils.h.


The documentation for this struct was generated from the following file:
get_generator_info.result
result
Definition: get_generator_info.py:21
skel.it
it
Definition: skel.GENtoEVGEN.py:423
PMonMT::EventLevelData::getEventLevelData
EventMeasMap_t getEventLevelData() const
Definition: PerfMonMTUtils.h:215
beamspotman.stat
stat
Definition: beamspotman.py:266
PMonMT::EventLevelData::m_eventLevelDeltaMap
EventMeasMap_t m_eventLevelDeltaMap
Definition: PerfMonMTUtils.h:195
PMonMT::EventLevelData::m_offset_wall
double m_offset_wall
Definition: PerfMonMTUtils.h:210