ATLAS Offline Software
Loading...
Searching...
No Matches
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 196 of file PerfMonMTUtils.h.

Member Typedef Documentation

◆ EventMeasMap_t

Definition at line 199 of file PerfMonMTUtils.h.

Member Function Documentation

◆ getEventLevelCpuTime()

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

Definition at line 228 of file PerfMonMTUtils.h.

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

◆ getEventLevelData()

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

Definition at line 220 of file PerfMonMTUtils.h.

220 {
222 }

◆ getEventLevelMemory()

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

Definition at line 236 of file PerfMonMTUtils.h.

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

◆ getEventLevelMemoryMax()

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

Definition at line 241 of file PerfMonMTUtils.h.

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

◆ getEventLevelWallTime()

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

Definition at line 232 of file PerfMonMTUtils.h.

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

◆ getNMeasurements()

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

Definition at line 224 of file PerfMonMTUtils.h.

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

◆ recordEvent()

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

Definition at line 203 of file PerfMonMTUtils.h.

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

◆ set_wall_time_offset()

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

Definition at line 218 of file PerfMonMTUtils.h.

218{ m_offset_wall = wall_time_offset; }

Member Data Documentation

◆ m_eventLevelDeltaMap

EventMeasMap_t PMonMT::EventLevelData::m_eventLevelDeltaMap

Definition at line 200 of file PerfMonMTUtils.h.

◆ m_offset_wall

double PMonMT::EventLevelData::m_offset_wall {}

Definition at line 215 of file PerfMonMTUtils.h.

215{};

The documentation for this struct was generated from the following file: