11#ifndef O2_FRAMEWORK_DATAPROCESSINGSTATS_H_
12#define O2_FRAMEWORK_DATAPROCESSINGSTATS_H_
99 enum struct Op :
char {
133 unsigned short id = 0;
143 unsigned short id = 0;
197 std::array<Command, MAX_CMDS>
cmds = {};
198 std::array<int64_t, MAX_METRICS>
metrics = {};
Timeframe settings Average distance in cm of events merged into Randomize distance around average distance of merged events Simulate correct bunch interactions instead of placing only the average number of events A value[n] sets TFlen for[n] collisions in Number of bunches per trainsort Number of bunch trains Instantaneous interaction rate Do not simulate border Total number of collisions to be placed in the interior of all time Do not select random but walk over array of events in stride steps h Event generator settings h configStandalone Use CPU for GPU Force usage of the specified GPU device no CPU fallback Continue processing after an error First event to Number of events to Number of iterations to Number of iterations to Number of initial iterations excluded from const char Directory with events to Events directory is and not inside events Show standalone event Run event generator maximum time bin of continuous for triggered for automatic continuous for automatic continuous triggered uint64_t
GLuint const GLchar * name
GLenum GLenum GLsizei const GLuint GLboolean enabled
GLsizei GLenum const void GLuint GLsizei GLfloat * metrics
GLsizei const GLfloat * value
typedef void(APIENTRYP PFNGLCULLFACEPROC)(GLenum mode)
Defining ITS Vertex explicitly as messageable.
ServiceKind
The kind of service we are asking for.
@ CCDB_CACHE_FETCHED_BYTES
@ LAST_SLOW_METRIC_SENT_TIMESTAMP
@ BEGIN_ITERATION_TIMESTAMP
@ LAST_METRIC_FLUSHED_TIMESTAMP
@ LAST_VERY_SLOW_METRIC_SENT_TIMESTAMP
@ AVAILABLE_MANAGED_SHM_BASE
@ AOD_FILE_OPEN_SKIPPED_FILES
@ SHM_OFFER_BYTES_CONSUMED
@ AOD_INVALID_READ_SKIPPED_TIMEFRAMES
@ TIMESLICE_NUMBER_STARTED
@ CCDB_CACHE_REQUESTED_BYTES
@ TIMESLICE_NUMBER_EXPIRED
@ DROPPED_INCOMING_MESSAGES
@ ARROW_MESSAGES_DESTROYED
@ TIMESLICE_OFFER_NUMBER_CONSUMED
@ LAST_REPORTED_PERFORMED_COMPUTATIONS
int64_t minOnlinePublishInterval
int64_t minPublishInterval
How many milliseconds must have passed since the last publishing.
int64_t defaultValue
The default value for the metric.
Scope scope
The scope of the metric.
Kind kind
The kind of the metric.
uint64_t maxRefreshLatency
Helper struct to hold statistics about the data processing happening.
std::atomic< int > pendingCmds
std::array< bool, MAX_METRICS > updated
char const * findMetricNameById(ProcessingStatsId id) const
void registerMetric(MetricSpec const &spec)
std::array< MetricSpec, MAX_METRICS > metricSpecs
int64_t pushedMetricsTotal
std::atomic< size_t > statesSize
std::vector< int > availableMetrics
int64_t publishingInvokedTotal
int64_t lastFlushedToRemote
int64_t publishedMetricsTotal
std::function< int64_t(int64_t base, int64_t offset)> getTimestamp
std::atomic< int64_t > updatedMetricsLapse
@ SetIfPositive
Set the value to the specified value.
@ InstantaneousRate
Update the rate of the metric given the cumulative value since last time it got published.
@ Max
Subtract the value from the current value.
@ Min
Set the value to the maximum of the current value and the specified value.
@ CumulativeRate
Set the value to the specified value if it is positive.
@ Sub
Add the value to the current value.
@ Add
Update the rate of the metric given the amount since the last time.
void updateStats(CommandSpec cmd)
int64_t initialTimeOffset
std::array< std::string, MAX_METRICS > metricsNames
int64_t publishedMetricsLapse
std::array< Command, MAX_CMDS > cmds
std::atomic< int > nextCmd
std::atomic< int > insertedCmds
void flushChangedMetrics(std::function< void(MetricSpec const &, int64_t, int64_t)> const &callback)
std::array< int64_t, MAX_METRICS > lastPublishedMetrics
std::function< void(int64_t &base, int64_t &offset)> getRealtimeBase
int64_t updatedMetricsTotal
static constexpr unsigned short MAX_METRICS
void processCommandQueue()
std::array< UpdateInfo, MAX_METRICS > updateInfos
int64_t pushedMetricsLapse
static constexpr ServiceKind service_kind
static constexpr short MAX_CMDS
int64_t publishingDoneTotal