MemoryOperationStatistics Struct Reference

Statistics for memory read/write operations. More...

#include <RobotAPI/libraries/armem/server/MemoryToIceAdapter.h>

Public Member Functions

void reset ()
 
std::pair< double, double > updateRates ()
 Calculate and update the current rates.
 

Public Attributes

double commitsPerSecond {0.0}
 
std::atomic< uint64_t > failedUpdates {0}
 
uint64_t lastCommitCount {0}
 
uint64_t lastQueryCount {0}
 
std::chrono::steady_clock::time_point lastRateCalculation {std::chrono::steady_clock::now()}
 
std::atomic< double > maxCommitBlockingTimeMs {0.0}
 
std::atomic< double > maxQueryBlockingTimeMs {0.0}
 
double queriesPerSecond {0.0}
 
std::mutex rateMutex
 
std::atomic< uint64_t > successfulUpdates {0}
 
std::atomic< double > totalCommitBlockingTimeMs {0.0}
 
std::atomic< uint64_t > totalCommitCount {0}
 
std::atomic< uint64_t > totalEntityUpdates {0}
 
std::atomic< double > totalQueryBlockingTimeMs {0.0}
 
std::atomic< uint64_t > totalQueryCount {0}
 

Detailed Description

Statistics for memory read/write operations.

Thread-safe statistics tracking for debugging memory performance. Tracks counts, rates, and timing information for commits and queries.

Member Function Documentation

◆ reset()

void reset ( )
inline

◆ updateRates()

std::pair< double, double > updateRates ( )
inline

Calculate and update the current rates.

Returns
Pair of (commits/sec, queries/sec)

Member Data Documentation

◆ commitsPerSecond

double commitsPerSecond {0.0}

◆ failedUpdates

std::atomic<uint64_t> failedUpdates {0}

◆ lastCommitCount

uint64_t lastCommitCount {0}

◆ lastQueryCount

uint64_t lastQueryCount {0}

◆ lastRateCalculation

std::chrono::steady_clock::time_point lastRateCalculation {std::chrono::steady_clock::now()}

◆ maxCommitBlockingTimeMs

std::atomic<double> maxCommitBlockingTimeMs {0.0}

◆ maxQueryBlockingTimeMs

std::atomic<double> maxQueryBlockingTimeMs {0.0}

◆ queriesPerSecond

double queriesPerSecond {0.0}

◆ rateMutex

std::mutex rateMutex
mutable

◆ successfulUpdates

std::atomic<uint64_t> successfulUpdates {0}

◆ totalCommitBlockingTimeMs

std::atomic<double> totalCommitBlockingTimeMs {0.0}

◆ totalCommitCount

std::atomic<uint64_t> totalCommitCount {0}

◆ totalEntityUpdates

std::atomic<uint64_t> totalEntityUpdates {0}

◆ totalQueryBlockingTimeMs

std::atomic<double> totalQueryBlockingTimeMs {0.0}

◆ totalQueryCount

std::atomic<uint64_t> totalQueryCount {0}

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