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)
 
const EventMeasMap_tgetEventLevelData () 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 197 of file PerfMonMTUtils.h.

Member Typedef Documentation

◆ EventMeasMap_t

Definition at line 200 of file PerfMonMTUtils.h.

Member Function Documentation

◆ getEventLevelCpuTime()

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

Definition at line 229 of file PerfMonMTUtils.h.

229  {
230  return m_eventLevelDeltaMap.at(event_count).cpu_time;
231  }

◆ getEventLevelData()

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

Definition at line 221 of file PerfMonMTUtils.h.

221  {
222  return m_eventLevelDeltaMap;
223  }

◆ getEventLevelMemory()

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

Definition at line 237 of file PerfMonMTUtils.h.

238  {
239  return m_eventLevelDeltaMap.at(event_count).mem_stats.at(stat);
240  }

◆ getEventLevelMemoryMax()

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

Definition at line 242 of file PerfMonMTUtils.h.

242  {
243  int64_t result = 0;
244  for (const auto& it : getEventLevelData()) {
245  if (it.second.mem_stats.at(stat) > result) {
246  result = it.second.mem_stats.at(stat);
247  }
248  }
249  return result;
250  }

◆ getEventLevelWallTime()

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

Definition at line 233 of file PerfMonMTUtils.h.

233  {
234  return m_eventLevelDeltaMap.at(event_count).wall_time;
235  }

◆ getNMeasurements()

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

Definition at line 225 of file PerfMonMTUtils.h.

225  {
226  return m_eventLevelDeltaMap.size();
227  }

◆ recordEvent()

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

Definition at line 204 of file PerfMonMTUtils.h.

204  {
205 
206  // Timing
207  m_eventLevelDeltaMap[eventCount].cpu_time = meas.cpu_time;
208  m_eventLevelDeltaMap[eventCount].wall_time = meas.wall_time - m_offset_wall;
209 
210  // Memory
211  m_eventLevelDeltaMap[eventCount].mem_stats = meas.mem_stats;
212 
213  }

◆ set_wall_time_offset()

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

Definition at line 219 of file PerfMonMTUtils.h.

219 { m_offset_wall = wall_time_offset; }

Member Data Documentation

◆ m_eventLevelDeltaMap

EventMeasMap_t PMonMT::EventLevelData::m_eventLevelDeltaMap

Definition at line 201 of file PerfMonMTUtils.h.

◆ m_offset_wall

double PMonMT::EventLevelData::m_offset_wall {}

Definition at line 216 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:396
PMonMT::EventLevelData::getEventLevelData
const EventMeasMap_t & getEventLevelData() const
Definition: PerfMonMTUtils.h:221
beamspotman.stat
stat
Definition: beamspotman.py:266
PMonMT::EventLevelData::m_eventLevelDeltaMap
EventMeasMap_t m_eventLevelDeltaMap
Definition: PerfMonMTUtils.h:201
PMonMT::EventLevelData::m_offset_wall
double m_offset_wall
Definition: PerfMonMTUtils.h:216